빈 칸은 쿼우트(quote)나 이스케이프(escape)되지않고중괄호에서 쓰일 수 없습니다.
echo {file1,file2}\ :{\ A," B",' C'}
# file1 : A file1 : B file1 : C file2 : A file2 : B file2 : C
예제 1) 코드 블럭과 I/O 재지향
#!/bin/bash
# /home/rsccmw/logtest/file.txt 읽기
File=/home/rsccmw/logtest/file.txt
{
read line1
read line2
} < $File
echo "$File.txt 파일의 첫번째 줄:"
echo "$line1"
echo
echo "$File 파일의 두번째 줄:"
echo "$line2"
exit 0
#!/bin/bash # str-test.sh: Testing null strings and unquoted strings, # but not strings and sealing wax, not to mention cabbages and kings... # (옮긴이: ??? :)
# if [ ... ] 를 쓸께요.
# 문자열이 초기화 안 됐다면 정해진 값을 갖지 않는데 #+ 이런 상태를 "널"(null)이라고 부릅니다(0 과는 다릅니다).
if [ -n $string1 ] # $string1 은 선언도 초기화도 안 됐습니다. then echo "\"string1\" 은 널이 아닙니다." else echo "String \"string1\" 은 널입니다." fi # 틀렸죠. # 초기화가 안 됐는데도 널이 아닌 것으로 나오네요.
echo
# 다시 해보죠.
if [ -n "$string1" ] # 이번엔 $string1 을 쿼우트 시켜서 해보죠. then echo "\"string1\" 은 널이 아닙니다." else echo "\"string1\" 은 널입니다." fi # 테스트문에서는 문자열을 꼭 쿼우트 시키세요!
echo
if [ $string1 ] # 이번엔 달랑 $string1 만 두고 해보죠. then echo "\"string1\" 은 널이 아닙니다." else echo "\"string1\" 은 널입니다." fi # 이건 잘 되네요. # 문자열을 쿼우트 시키는 게("$string1") 좋은 습관이긴 하지만 # [ ] 테스트 연산자는 혼자 쓰이면 문자열이 널인지 아닌지를 잘 알아냅니다. # # Stephane Chazelas 가 지적한 것처럼, # if [ $string 1 ] 는 인자가 "]" 하나고, # if [ "$string 1" ] 는 인자가 빈 "$string1"과 "]", 두 개입니다.
echo
string1=initialized
if [ $string1 ] # , $string1 을 다시 혼자 써보죠. then echo "\"string1\" 은 널이 아닙니다." else echo "\"string1\" 은 널입니다." fi # 역시 결과가 맞게 잘 나오죠. # 마찬가지로 이유로 쿼우트 해주는 것이("$string1") 좋습니다. 왜냐하면...
string1="a = b"
if [ $string1 ] # $string1 을 또 혼자 씁니다. then echo "\"string1\" 은 널이 아닙니다." else echo "\"string1\" 은 널입니다." fi # 이제 "$string1"을 쿼우트 해 주지 않으면 틀린 결과가 나옵니다!
HTTPS는 소켓 통신에서 일반 텍스트를 이용하는 대신에, SSL이나 TLS프로토콜을 통해 세션 데이터를 암호화 한다.
( HTTP의 기본포트는 80 HTTPS의 기본포트는 443이다. )
ㄴ 최근 스프링부트 프로젝트를 개발진행하면서 HTTPS를 적용시킬려는과정에서 HTTP의 포트를 8080 , HTTPS의 포트가 8443 인 상태에서 JAR파일을 개인서버인 라즈베리파이에 배포한적이있는데 기본포트가아닌 다른 포트를 사용할 경우 URL에 포트를 명시해주어야만 한다.