<출력하기>
배시쉘의 출력명령은 echo와 printf이다.
echo : 화면에 한줄의 문자열을 출력한다
echo [-n] [문자열]
ex)echo text
printf:자료를 형식화하여 화면에 출력한다.
printf 형식 [인수]
%d, \n등 C언어의 printf함수 형식을 지정한다.
ex) printf text
printf "text\n"
printf "%d\n" 100
~
chsh : 사용자 로그인 셸을 바꾼다.
-s shell : 지정하는 셸로 로그인 셸을바꾼다.
-l : /etc/shells 파일에 저장된 셸을 출력한다.
ex) chsh -l
chsh -s /bin/sh user1
chsh
현재 바꿀 수 있는 쉘의 종류는 /etc/shells에 저장되어 있다.
cat /etc/shells >> sh, dash, bash, rbash 가 존재한다.
rbash의 경우 배시쉘의 심벌릭 링크이다.
<로그인쉘과 서브쉘>
사용자는 프롬프트에서 다른쉘을 실행할수 있는데, 이렇게 새로 생성된 쉘을 서브쉘이라 한다.
<출력하기>
배시쉘의 출력명령은 echo와 printf이다.
echo : 화면에 한줄의 문자열을 출력한다
echo [-n] [문자열]
ex)echo text
printf:자료를 형식화하여 화면에 출력한다.
printf 형식 [인수]
%d, \n등 C언어의 printf함수 형식을 지정한다.
ex) printf text
printf "text\n"
printf "%d\n" 100
<특수문자>
* : *는 임의의 문자열을 나타내는 특수 문자로 주료 여러파일의 이름을 나열할때 파일 이름을 간단히 표현하는 데 사용된다. 명령을 실행할ㄸ ㅐ 파일이름을 적어야하는 자리에 대신 사용할경우 모든파일을 나타낸다.
ls * : 현재 디렉터리의 모든 파일과 서브 디렉터리를 나열
cp * /tmp : 현재 디렉터리의 모든 파일을 /tmp 아래로 복사한다.
ls -F t* : t,tmp,temp와 같이 t로 시작하는 모든 파일의 이름과 파일종류를 출력한다.
cp *.txt ../ch3 : 확장자가 txt인 모든파일을 ch3디렉터리로 복사한다.
ls -l h*d : 파일명이 h로 시작,d로 끝나는 모든 파일의 상세정보를출력
?와 [ ] : 모두 하나의 문자를 나타내는데 사용된다.
?는 길이가 1인 임의의 한문잘ㄹ, []는 괄호안에 포함된 문자중 하나를 나타낸다.
ls t*.txt. : t 다음에 임의의 한문자가 오고 파일의 확장자가 txt인 모든 ㅍ일의 이름을 출력한다.
ls -l tmp[135].txt : tmp다음에 1,3,5중한글자가 오는txt파일 출력
ls [0-9]* : 파일명이 숫자로 시작하는 모든파일목록을 출력
ls [A-Za-z]*[0-9] : 파일명이 영문으로 시작하고 숫자로끝나는모든파일출력
~와 - : 디렉터리를 나나내느 특수문자
~만 사용하면 현재 작업중인 사용자의 홈디렉터리를 나타내고, 다른 사용자의 로그인 ID와 함께 사용하면 해당 사용자의 홈 디렉터리를 나타낸다.
-는 cd 명령으로 디렉터리를 이전하기 직전의 작업디렉터리를 나타낸다.
cp *.txt ~/ch3 : 확장자가txt인 파일을 현재작업중인 사용자홈ㄷ렉터리 아래 tmp 디렉터리로 복사한다.
cp ~user2/linux.txt . : 현재디렉터리로 user2의홈디렉터리에서linux.txt를 찾아 복사 한다.
cd - : 이전 작업 디렉터리로 이동한다.
;과 | : 명령과 명령을 연결한다.
; : 연결된 명령을 왼쪽부터 차례로 실행하고,
|는 왼족명령의 실행결과를 오른쪽 명령의 입력으로 전달한다.
date;ls;pwd : 왼쪽부터 차례로 수행
ls -al / | more : 모든파일의 상세정보를 한 화면씩 출력한다. ls의 결과가 more 명령의 입력으로 전달되어 페이지 단위로 출력되는 것이다.
''와"" : 문자를 감싸서 문자열로 만들어 주고, 문자열 안에 사용된 특수 문자의 기능을 없앤다.
'' : 모든 특수문자를
"" : $,``,\을 제외한 모든 특수문자를 일반 문자로 간주하여 처리
echo '$SHELL' : $SHELL 문자열이 출력됨
echo "$SHELL" : 셸 환경 변수인 shell에 저장된 값인 현재 셸의 종류가 출력
`` : ~의 no shift 형태 , 쉘은 ``로 감싸인 문자열을 명령으로 해석하여 명령의 실행 결과로 바뀌게 한다.
echo "Today is `date`":`date`는 명령어로 해석되어 출력된다.
ls /platform/'uname -m`: uname -m 명령의 실행결과를 문자열로 바꿔 디렉터리 이름으로 사용한다.
\ : 특수문자 앞에 쓰이며, 해당 특수 문자의 효과를 업새고 일반 문자처럼 처리.
ls - t\* : t*이라는 이름을 가진 파일의 정보를 출력한다. 만약 \가 없을 경우 t로 시작하는 모든 파일의 상세정보를 출력
echo \$SHELL : $SHELL을 출력한다.
>,<,>> : 입출력의 방향을 바꾸는 특수문자
'O / S > Linux' 카테고리의 다른 글
리다이렉션 (0) | 2015.08.16 |
---|---|
Linux 디렉터리와 파일다루기 (0) | 2015.08.16 |
Kali Linux 2.0 Adob Flash Install (0) | 2015.08.14 |
kali linux 2.0 한글 (0) | 2015.08.14 |
Ubuntu Alt_R 한글 변환 설정 (0) | 2015.07.09 |