Latest web development tutorials

리눅스 파일 및 디렉토리 관리

우리가 알고있는 트리 구조의 루트 디렉토리 / 상단 리눅스의 디렉토리 구조있다.

당신은 트리에 추가하여 다른 디렉토리를 마운트 할 수 있습니다, 당신은 마운트 해제하여 제거 할 수 있습니다.

이 튜토리얼을 시작하기 전에 우리는 절대 경로와 상대 경로가 뭔지 알 필요가있다.

  • 절대 경로 :
    에서 루트 디렉토리 / 쓰기에서 경로를 작성 예 : / usr / share / doc 디렉토리.
  • 상대 경로 :
    하지 않음으로써 / 예는 / usr / share / doc가 아래는 / usr / share / 남자로 이동하기에서 쓰기 경로를 작성, 같이 쓸 수있다 :이 ../man CD가 상대 경로가 기록됩니다!

일반 명령 처리 디렉토리

다음으로 우리는 몇 가지 일반적인 명령 처리 디렉토리를 볼 것이다 그것은 :

  • LS : 목록 디렉토리
  • CD : 디렉토리를 변경
  • PWD : 현재 디렉토리를 표시합니다
  • MKDIR : 새로운 디렉토리를 생성
  • rmdir을 : 빈 디렉토리를 삭제
  • CP : 복사 파일이나 디렉토리
  • RM : 파일이나 디렉토리를 제거

남자 CP : 당신은 같은 개별 명령을 사용하여 문서를 볼 수있는 사람 [명령]을 사용할 수 있습니다.

LS (목록 디렉토리)

리눅스 시스템 중, ls 명령은 아마도 가장 일반적인되고 실행됩니다.

구문 :

[root@www ~]# ls [-aAdfFhilnrRSt] 目录名称
[root@www ~]# ls [--color={never,auto,always}] 目录名称
[root@www ~]# ls [--full-time] 目录名称

옵션 및 매개 변수 :

  • -a : 함께 (. 파일의 시작에서) 숨겨진 파일 모든 문서에 함께 표시됩니다 (공통)
  • -d : 목록 만 디렉토리 자체 대신 디렉토리에 데이터 파일을리스트 (공통)
  • -l : (공통) 밖으로 긴 시리얼 데이터, 파일 속성 및 권한 등 데이터를 포함

(숨김 파일 및 속성 포함) 홈 디렉토리 아래에 나열된 모든 파일

[root@www ~]# ls -al ~

CD (디렉토리 변경)

CD 디렉토리 변경은 작업 디렉토리를 변환하는 데 사용되는 명령 인 약어이다.

구문 :

 cd [相对路径或绝对路径]
#使用 mkdir 命令创建w3cschool.cc目录
[root@www ~]# mkdir w3cschool.cc

#使用绝对路径切换到w3cschool.cc目录
[root@www ~]# cd /root/w3cschool.cc/

#使用相对路径切换到w3cschool.cc目录
[root@www ~]# cd ./w3cschool.cc/

# 表示回到自己的家目录,亦即是 /root 这个目录
[root@www w3cschool.cc]# cd ~

# 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思;
[root@www ~]# cd ..

다음 몇 번 당신은 cd 명령을 잘 이해 이상 작동 할 수 있어야한다.

PWD (디렉토리가 현재 상주 표시)

인쇄 작업 디렉터리 PWD이 명령은 현재 디렉토리가 표시되는 약어입니다.

[root@www ~]# pwd [-P]
选项与参数:
-P  :显示出确实的路径,而非使用连结 (link) 路径。

范例:单纯显示出目前的工作目录:
[root@www ~]# pwd
/root   <== 显示出目录啦~

范例:显示出实际的工作目录,而非连结档本身的目录名而已
[root@www ~]# cd /var/mail   <==注意,/var/mail是一个连结档
[root@www mail]# pwd
/var/mail         <==列出目前的工作目录
[root@www mail]# pwd -P
/var/spool/mail   <==怎么回事?有没有加 -P 差很多~
[root@www mail]# ls -ld /var/mail
lrwxrwxrwx 1 root root 10 Sep  4 17:54 /var/mail -> spool/mail
# 看到这里应该知道为啥了吧?因为 /var/mail 是连结档,连结到 /var/spool/mail 
# 所以,加上 pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!

MKDIR (새 디렉토리를 생성)

새 디렉토리를 만들려면, 다음에서 mkdir 그것을 (디렉토리 만들기)를 사용합니다.

구문 :

mkdir [-mp] 目录名称

옵션 및 매개 변수 :

  • -m : 권한이 오 프로필! 직접 구성, 당신은 ~ 기본 권한 (umask를) 얼굴을 볼 필요가
  • -p : (상위 디렉토리 포함) 원하는 디렉토리 재귀를 만들에 직접 당신을 도울 수 있습니다!

예 : 볼 수있는 새로운 디렉토리를 생성하기 위해 여러 시도에서 tmp를 /로 이동

[root@www ~]# cd /tmp
[root@www tmp]# mkdir test    <==创建一名为 test 的新目录
[root@www tmp]# mkdir test1/test2/test3/test4
mkdir: cannot create directory `test1/test2/test3/test4': 
No such file or directory       <== 没办法直接创建此目录啊!
[root@www tmp]# mkdir -p test1/test2/test3/test4

당신이 당신의 자신의 멀티 디렉토리를 만들 수 있습니다이 옵션을 추가 -p!

예 : 만들기 허가 rwx - X - X 디렉토리

[root@www tmp]# mkdir -m 711 test2
[root@www tmp]# ls -l
drwxr-xr-x  3 root  root 4096 Jul 18 12:50 test
drwxr-xr-x  3 root  root 4096 Jul 18 12:53 test1
drwx--x--x  2 root  root 4096 Jul 18 12:54 test2

만약 구성 속성을 강요 -m을 추가하지 않은 경우에는 상기 권한 섹션, 시스템은 디폴트 속성을 사용한다.

X - - X 권한 우리는 새로운 디렉토리 ¹ 록 drwx를 제공하기 위해 우리가 711 -m주는 예에서와 같이, -m 사용합니다.

rmdir을 (빈 디렉토리를 제거)

구문 :

 rmdir [-p] 目录名称

옵션 및 매개 변수 :

  • -p :에 "빈"디렉토리에 함께도 함께 삭제됩니다

w3cschool.cc 디렉토리를 제거

[root@www tmp]# rmdir w3cschool.cc/

예 : MKDIR 디렉토리 예에서 생성됩니다 (/ tmp를 아래) 제거!

[root@www tmp]# ls -l   <==看看有多少目录存在?
drwxr-xr-x  3 root  root 4096 Jul 18 12:50 test
drwxr-xr-x  3 root  root 4096 Jul 18 12:53 test1
drwx--x--x  2 root  root 4096 Jul 18 12:54 test2
[root@www tmp]# rmdir test   <==可直接删除掉,没问题
[root@www tmp]# rmdir test1  <==因为尚有内容,所以无法删除!
rmdir: `test1': Directory not empty
[root@www tmp]# rmdir -p test1/test2/test3/test4
[root@www tmp]# ls -l        <==您看看,底下的输出中test与test1不见了!
drwx--x--x  2 root  root 4096 Jul 18 12:54 test2

-p 옵션을 사용하여 즉시 TEST1 / TEST2 / TEST3 / TEST4 삭제 될 수 있습니다.

이 rmdir을 단지 빈 디렉토리를 삭제할 수 있습니다, 그러나, 참고 비어 있지 않은 디렉토리를 제거하려면 rm 명령을 사용할 수 있습니다.

CP (파일이나 디렉토리를 복사)

즉, CP 복사 파일 및 디렉토리.

구문 :

[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory

옵션 및 매개 변수 :

  • -a : 동등한 수단 -pdr, PDR은 다음 지침을 참조로 (공통)
  • -d : 등록 프로필 링크 (링크 파일)에 대한 소스 파일, 파일 자체가 아닌 링크 파일 속성을 복사하는 경우;
  • -f : 대상 파일이 이미 존재하고 열 수없는 경우 힘 (힘)의 의미로, 다시 시도하십시오 제거하고;
  • -i : 대상 파일 (대상)이 이미 존재하는 경우, 범위가 질문하고 (공통)를 작동 할 때
  • -l : 하드 링크 (하드 링크) 파일 자체를 복사, 링크 파일을 만들 수;
  • -p : 대신 (백업이 일반적으로 사용) 기본 속성을 사용하는, 과거에 함께 복사 한 파일의 속성과 함께,
  • -r : 재귀 연속 복제에 대한 디렉토리를 복사 (공통)
  • -s : 파일 복사가 심볼릭 링크 (기호 링크), 즉 "바로 가기"파일이 될;
  • -u : 소스 목적지보다 오래된 업그레이드하기 전에 목적지의 경우!
  • 루트로, bashr을 / tmp 디렉토리에 홈 디렉토리에 .bashrc에 복사하고 이름을 변경

    [root@www ~]# cp ~/.bashrc /tmp/bashrc
    [root@www ~]# cp -i ~/.bashrc /tmp/bashrc
    cp: overwrite `/tmp/bashrc'? n  <==n不覆盖,y为覆盖
    

    RM (파일이나 디렉토리를 제거)

    구문 :

     rm [-fir] 文件或目录
    

    옵션 및 매개 변수 :

    • -f : 힘이 경고 메시지가 존재하지 않는 파일을 무시하는 것을 의미한다;
    • -i : 대화식 모드, 사용자는 작업 전에 삭제할지 여부를 묻는 메시지가 표시됩니다
    • -r : 아 삭제 재귀! 가장 일반적으로 사용하는 디렉토리에서 삭제! 이것은 매우 위험한 선택이 될 것입니다! ! !

    bashrc에 그냥 삭제 CP의 예에서 만든!

    [root@www tmp]# rm -i bashrc
    rm: remove regular file `bashrc'? y
    

    우리는 오 물어 주도권을 쥐고 것 -i 옵션을 추가하면 잘못된 파일 이름을 삭제하지 않도록!

    MV (파일과 디렉토리를 이동하거나 이름을 수정)

    구문 :

    [root@www ~]# mv [-fiu] source destination
    [root@www ~]# mv [options] source1 source2 source3 .... directory
    

    옵션 및 매개 변수 :

    • -f : 대상 파일이 이미 존재하는 경우 아무것도 범위를 묻는 메시지가 표시되지 않습니다, 필수 감각을 강제;
    • -i : 대상 파일 (대상)이 이미 존재하는 경우 덮어 쓸지 여부를 묻습니다!
    • -u : 대상 파일이 이미 존재하고 소스가 상대적으로 새로운 경우에만 업그레이드 (업데이트)

    , 디렉토리를 만들고, 파일을 복사 디렉토리에 파일을 이동

    [root@www ~]# cd /tmp
    [root@www tmp]# cp ~/.bashrc bashrc
    [root@www tmp]# mkdir mvtest
    [root@www tmp]# mv bashrc mvtest
    

    이동 디렉토리에 파일을 이동, 그렇게하는 것입니다!

    디렉토리 이름은 단지 mvtest2 이름을 변경

    [root@www tmp]# mv mvtest mvtest2
    

    리눅스 파일 내용보기

    리눅스 시스템이 파일의 내용을 볼 수있는 다음 명령을 사용

    • 첫 번째 줄에서 고양이는 파일 내용을 표시합니다
    • 전술은, 당신이 전술은 고양이가 거꾸로 작성된 것입니다 볼 수있는 마지막 행에서 표시!
    • NL 시각 표시는 출력 라인 번호의 기회!
    • 페이지의 더 많은 디스플레이 파일 내용 페이지
    • 더 적은 비슷하지만,보다 더 나은, 그는 플립 전달할 수 있습니다!
    • 헤드의 처음 몇 줄 봐
    • 꼬리 꼬리 라인 봐

    남자 CP : 당신은 같은 개별 명령을 사용하여 문서를 볼 수있는 사람 [명령]을 사용할 수 있습니다.

    고양이

    첫 번째 줄에서 파일 내용을 표시합니다

    구문 :

    cat [-AbEnTv]
    

    옵션 및 매개 변수 :

    • -A : 대신 빈의 일부 특수 문자를 나열 등가 -vET 통합 옵션;
    • -b : 행 번호, 행 번호 만이 아닌 빈 줄 표시에 대해 수행, 빈 줄이 표시되지 않은 줄 번호를 나열합니다!
    • -E : 줄 바꿈의 끝은 $ 표시 바이트;
    • -n : 행 번호를해야합니다 빈 줄과 함께, 줄 번호를 인쇄하고, -b 옵션이 다릅니다;
    • -T 다음 [탭] ^ I 버튼을 표시하는 단계;
    • -v : 특수 문자가 표시되지 않는 몇 가지를 나열

    을 참조하십시오은 / etc / 문제가이 파일의 내용 :

    [root@www ~]# cat /etc/issue
    CentOS release 6.4 (Final)
    Kernel \r on an \m
    

    전술

    반대로이, 마지막 줄에서 파일의 내용을 표시하기 시작했다 cat 명령과 전술, 당신은 전술 거꾸로 쓴 고양이입니다 볼 수 있습니다! 예를 들면 :

    
    [root@www ~]# tac /etc/issue
    
    Kernel \r on an \m
    CentOS release 6.4 (Final)
    

    NL

    줄 번호 표시

    구문 :

    nl [-bnw] 文件
    

    옵션 및 매개 변수 :

    • -b : 지정된 방식으로 행 번호를 지정, 두 가지가 있습니다 :
      -ba : 빈 줄이도 (고양이 -n 유사) 행 번호를 나열 여부를 나타냅니다;
      -bt : 빈 줄이있는 경우, 빈 행은 행 번호 (기본값)를 나열하지 않는다;
    • -n : 줄 번호 표시 방법을 나열, 세 가지가 있습니다 :
      -n LN : 원거리 화면 표시의 왼쪽에 줄 번호;
      -n RN : 디스플레이의 오른쪽에있는 자신의 분야에서 행 번호, 0을 추가하지 않습니다;
      -n RZ : 오른쪽 화면에서 자신의 분야에서 행 번호, 0을 추가;
    • -w : 점유 곳의 줄 번호 필드입니다.

    예제 1 : 목록의 NL은 / etc / 문제 내용

    [root@www ~]# nl /etc/issue
         1  CentOS release 6.4 (Final)
         2  Kernel \r on an \m
    

    페이지에서 페이지로 플립

    [root@www ~]# more /etc/man.config
    #
    # Generated automatically from man.conf.in by the
    # configure script.
    #
    # man.conf from man-1.6d
    ....(中间省略)....
    --More--(28%)  <== 重点在这一行喔!你的光标也会在这里等待你的命令
    

    더이 프로그램을 실행하는 과정에서, 당신은 몇 가지 키를 눌러야합니다 :

    • 스페이스 (공간) : 아래로 차례를 대신;
    • 입력 : 대표는 "라인"을 거절;
    • / 문자열이 디스플레이에 "문자열"키워드 검색 아래의 내용을 나타내며;
    • : F : 파일 이름과 현재 한번에 표시 행의 수를 나타낸다;
    • Q : 대표 휴가는 더 즉시, 더 이상 파일의 내용을 표시하지 않습니다.
    • B 또는 [Ctrl 키] -b : 대표 백 플립,하지만 쓸모 줄에 문서에 대해이 작업에만 유용합니다.

    적게

    페이지 페이지 이하의 실시 예에서는 /etc/man.config 출력 파일의 내용 플립 :

    [root@www ~]# less /etc/man.config
    #
    # Generated automatically from man.conf.in by the
    # configure script.
    #
    # man.conf from man-1.6d
    ....(中间省略)....
    :   <== 这里可以等待你输入命令!
    

    명령이 적은 런타임 입력 할 수 있습니다 :

    • 스페이스 바 : 하나를 아래로 스크롤;
    • [PageDown 키] : 아래 하나를 스크롤;
    • [페이지 업] : 하나를 플립;
    • / 문자열 : "문자열"기능을 검색;
    • ? 문자열 : 최대 검색 "문자열"기능;
    • N (및 / 또는 관련!) 이전 탐색 반복
    • N : 반전 반복 이전 검색 (및 / 또는 관련?!)
    • 질문 : 이하이 프로그램을두고;

    머리

    파일 라인의 전방 제거

    구문 :

    head [-n number] 文件 
    

    옵션 및 매개 변수 :

    • -n : 몇 줄 표시의 의미를 나타내는 숫자 뒤에
    [root@www ~]# head /etc/man.config
    

    기본적으로, 디스플레이 (10) 앞줄! 처음 20 줄을 표시하려면 다음과 같이해야 :

    [root@www ~]# head -n 20 /etc/man.config
    

    꼬리

    파일의 뒷부분에 몇 줄을 제거

    구문 :

    tail [-n number] 文件 
    

    옵션 및 매개 변수 :

    • -n : 몇 줄 표시의 의미를 나타내는 숫자 뒤에
    • -f : 계속 당신이 눌러 [CTRL] -c 꼬리 검출 종료됩니다 때까지 기다려야 할 파일 이름 뒤에 연결된 디스플레이를 나타냅니다
    [root@www ~]# tail /etc/man.config
    # 默认的情况中,显示最后的十行!若要显示最后的 20 行,就得要这样:
    [root@www ~]# tail -n 20 /etc/man.config