'분류 전체보기'에 해당되는 글 666건
- 2020.02.28 shell 10 개 이상 파라미터
- 2020.02.21 'vcruntime140.dll' 14.0 is not compatible with this PHP build linked with 14.16 in Unknown on line 0
- 2020.02.13 git windows 한글
- 2020.02.12 find grep (cygwin, linux, ....)
- 2020.02.07 git client for windows
- 2020.01.27 telnet program
- 2019.12.12 java 인증서 없이 https 접속하기
- 2019.11.29 cygwin setup
- 2019.11.29 generate source shell
- 2019.11.29 perl underscore2camelcase
'vcruntime140.dll' 14.0 is not compatible with this PHP build linked with 14.16 in Unknown on line 0
카테고리 없음 2020. 2. 21. 17:02git bash 에서
$ git config --global gui.encoding utf-8
git gui 다시 실행
$ cat 1.txt
가나다라
a
b
$ find . -name "1.txt"|xargs grep 가
가나다라
java8 이상에서만 가능
( 출처:https://nakov.com/blog/2009/07/16/disable-certificate-validation-in-java-ssl-connections/)
//package tt;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.URL;
import java.net.URLConnection;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import java.security.cert.X509Certificate;
public class Example {
public static void main(String[] args) throws Exception {
// Create a trust manager that does not validate certificate chains
TrustManager[] trustAllCerts = new TrustManager[] {new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}
public void checkClientTrusted(X509Certificate[] certs, String authType) {
}
public void checkServerTrusted(X509Certificate[] certs, String authType) {
}
}
};
// Install the all-trusting trust manager
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
// Create all-trusting host name verifier
HostnameVerifier allHostsValid = new HostnameVerifier() {
public boolean verify(String hostname, SSLSession session) {
return true;
}
};
// Install the all-trusting host verifier
HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);
URL url = new URL("https://kbstar.com/");
URLConnection con = url.openConnection();
Reader reader = new InputStreamReader(con.getInputStream());
while (true) {
int ch = reader.read();
if (ch==-1) {
break;
}
System.out.print((char)ch);
}
}
}
# exe.sh ------------------------------------------------------
sh cpre2.sh FROM_PROGRAM_ID TO_PROGRAM_ID
#cpre2.sh -----------------------------------------------------
# exe.sh -> cpre2.sh -> cp.sh -> replace.sh
#
# 새 파일을 만든다
# (OBSOLETE)주의:cp.sh 안의 디렉토리 명을 바꿔주어야 한다
# (OBSOLETE)주의:대문자로 시작하는 파일을 먼저 쓰고, 소문자는 다음
# ${1,,} 는 소문자 처리
echo cp2.sh ${1} ${2} "${1,,}" "${2,,}"
sh cp2.sh ${1} ${2} "${1,,}" "${2,,}"
# 만든 새 파일의 문자열을 치환한다
sh replace2.sh ${1} ${2} "${1,,}" "${2,,}"
echo
echo 'NB. sql-map-config*.xml is not included in this generator!';
echo
# cp2.sh -----------------------------------------------------------------------
echo "cp2.sh BEGIN ------------"
SRC1=$1
TGT1=$2
SRC2=$3
TGT2=$4
INPUT3=$3
INPUT4=$4
SRCSTR1=${INPUT3:0:2}
SRCSTR2=${INPUT3:2:2}
TGTSTR1=${INPUT4:0:2}
TGTSTR2=${INPUT4:2:2}
echo "SRCSTR1 ==> $SRCSTR1 "
echo "SRCSTR2 ==> $SRCSTR2 "
echo "TGTSTR1 ==> $TGTSTR1 "
echo "TGTSTR2 ==> $TGTSTR2 "
echo ${SRC1} ${TGT1}
# $ find /cygdrive/c/WorkSpace -name "uyCnsltCurst*"|grep -v class
cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/webapp/${SRCSTR1}/${SRCSTR2}/${SRC2}.jsp /cygdrive/d/PROJECT/workspace/pjt1/src/main/webapp/${TGTSTR1}/${TGTSTR2}/${TGT2}.jsp
echo cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/webapp/${SRCSTR1}/${SRCSTR2}/${SRC2}.jsp /cygdrive/d/PROJECT/workspace/pjt1/src/main/webapp/${TGTSTR1}/${TGTSTR2}/${TGT2}.jsp
cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${SRCSTR1}/${SRCSTR2}/controller/${SRC1}Controller.java /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${TGTSTR1}/${TGTSTR2}/controller/${TGT1}Controller.java
echo cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${SRCSTR1}/${SRCSTR2}/controller/${SRC1}Controller.java /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${TGTSTR1}/${TGTSTR2}/controller/${TGT1}Controller.java
cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${SRCSTR1}/${SRCSTR2}/service/${SRC1}Service.java /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${TGTSTR1}/${TGTSTR2}/service/${TGT1}Service.java
echo cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${SRCSTR1}/${SRCSTR2}/service/${SRC1}Service.java /cygdrive/d/PROJECT/workspace/pjt1/src/main/java/com/SUBDIR/${TGTSTR1}/${TGTSTR2}/service/${TGT1}Service.java
cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/resources/egovframework/sqlmap/sql/${SRCSTR1}/${SRCSTR2}/${SRC1}_SQL.xml /cygdrive/d/PROJECT/workspace/pjt1/src/main/resources/egovframework/sqlmap/sql/${TGTSTR1}/${TGTSTR2}/${TGT1}_SQL.xml
echo cp /cygdrive/d/PROJECT/workspace/pjt1/src/main/resources/egovframework/sqlmap/sql/${SRCSTR1}/${SRCSTR2}/${SRC1}_SQL.xml /cygdrive/d/PROJECT/workspace/pjt1/src/main/resources/egovframework/sqlmap/sql/${TGTSTR1}/${TGTSTR2}/${TGT1}_SQL.xml
echo "cp2.sh END ------------"
# replace2.sh -----------------------------------------------------------------------------------
# replace2.sh
echo "replace2.sh BEGIN"
INPUT3=$3
INPUT4=$4
echo 3333333 BEGIN 2
echo $INPUT3
echo 3333333 END 2
echo
SRCSTR1=${INPUT3:0:2}
SRCSTR2=${INPUT3:2:2}
TGTSTR1=${INPUT4:0:2}
TGTSTR2=${INPUT4:2:2}
echo "SRCSTR1 ==> $SRCSTR1 "
echo "SRCSTR2 ==> $SRCSTR2 "
echo "TGTSTR1 ==> $TGTSTR1 "
echo "TGTSTR2 ==> $TGTSTR2 "
echo $1 $2
echo $3 $4
echo $5 $6
echo $7 $8
echo $9 "${10}"
echo "${11}" "${12}"
#while (( $# > 0 )) # or [ $# -gt 0 ]
#do
# echo "$1"
# shift
#done
#echo $SRC1 $TGT1
#
#echo
#
# 다른 디렉토리 소스 복사할 때 (BEGIN)
find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${SRCSTR1}\/${SRCSTR2}/${TGTSTR1}\/${TGTSTR2}/g"
echo " ${SRCSTR1}/${SRCSTR2} -> ${TGTSTR1}/${TGTSTR2} (replace2.sh)"
find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${SRCSTR1}\.${SRCSTR2}/${TGTSTR1}\.${TGTSTR2}/g"
echo " ${SRCSTR1}.${SRCSTR2} -> ${TGTSTR1}.${TGTSTR2} (replace2.sh)"
# 다른 디렉토리 소스 복사할 때 (END)
find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${3}/${4}/g"
echo " ${3} -> ${4} (replace2.sh)"
find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${1}/${2}/g"
echo " ${1} -> ${2} (replace2.sh)"
#find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${5}/${6}/g"
#echo "replace.sh --- 3"
#find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${7}/${8}/g"
##find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i 's/'"${7}"'.*/'"${8}"'/g'
#
#echo "replace.sh --- 4"
##find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i "s/${9}/${10}/g"
##find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i 's/'"${9}"'.*/'"${10}"'/g'
##echo "replace.sh --- 5"
##find /cygdrive/d/SSGFNB/WorkSpace -iname "${2}*" | grep -v -E "class|bak|old" | xargs sed -i 's/'"${11}"'.*/'"${12}"'/g'
echo ""
echo "replace.sh END ----------------"
#!/usr/bin/perl
my $in = "PRINT_THIS_TEXT_IN_CAMEL_CASE";
my $res = under2camel ($in);
print "in:$in\tres:$res\n";
sub under2camel {
my $str = shift @_;
my $result;
$str = lc $str;
my @split = map(ucfirst, (split/(_)/, $str));
my $result = "";
foreach my $kk (0 .. $#split) {
# print $split[$kk] . "\n";
$result .= $split[$kk];
}
$result = lcfirst $result;
$result =~ s/_//g;
return $result;
}