File/Directory
7483 ワード
Ⅰ. パス
1.絶対パス(Absolute Path)
/usr/local
2.相対パス(Relative Path)
./teamdev2/jsg2
or teamdev2/jsg2
Ⅱ. ディレクトリ関連コマンド
1.現在のディレクトリを表示
$ pwd
: (print working directory) jsg@jsg-ubuntu:~$ pwd
/home/jsg
2.ディレクトリの変更
$ cd [directory]
: (change directory) jsg@jsg-ubuntu:~$ pwd # 현재 경로
/home/jsg
jsg@jsg-ubuntu:~$ cd /tmp # /로 시작하는 절대 경로
jsg@jsg-ubuntu:/tmp$ cd ../usr # 한 단계 위로 이동 후 usr로 이동
jsg@jsg-ubuntu:/usr$ cd - # 이전 경로인 /tmp로 이동
/tmp
jsg@jsg-ubuntu:/tmp$ cd ~ # 홈 디렉토리로 이동
jsg@jsg-ubuntu:~$ cd ./문서 # 홈 디렉토리에 대한 상대 경로
jsg@jsg-ubuntu:~/문서$
3.ディレクトリ内のファイルリスト
$ ls [option] [file_name]
4.ディレクトリの作成
$ mkdir [-p] file_name
(make directory) jsg@jsg-ubuntu:~$ ls
examples.desktop 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
jsg@jsg-ubuntu:~$ mkdir testdir; ls
examples.desktop 공개 문서 비디오 음악
testdir 다운로드 바탕화면 사진 템플릿
5.ディレクトリの削除
$ rmdir directory
コマンドですが、ディレクトリは空でなければ使用できません$ rm -rf file_name
より常用jsg@jsg-ubuntu:~$ rm -rf testdir
jsg@jsg-ubuntu:~$ ls
examples.desktop 공개 다운로드 문서 바탕화면 비디오 사진 음악 템플릿
ファイルに関するコマンド
1.簡単なテキストファイルを作成する
$ echo "Hello World" > testdir/hello.txt
jsg@jsg-ubuntu:~$ echo "Hello World" > testdir/hello.txt; ls testdir
hello.txt
2.テキストファイルの出力
$ cat testdir/hello.txt
jsg@jsg-ubuntu:~$ cat testdir/hello.txt
Hello World
3.ファイルの変更
$ chmod XXX file_name
:(changemode)権限変更jsg@jsg-ubuntu:~$ chmod 664 testdir; ls -l testdir
ls: 'testdir/hello.txt'에 접근할 수 없습니다: 허가 거부
합계 0
-????????? ? ? ? ? ? hello.txt
# chown user_name file_name
:(変更所有者)所有者変更root@jsg-ubuntu:/home/jsg# chown jsg2 testdir/hello.txt
root@jsg-ubuntu:/home/jsg# ls -l testdir/hello.txt
-rw-rw-r-- 1 jsg2 jsg 12 Dec 10 00:24 testdir/hello.txt
# chgrp group_name file_name
:(変更グループ)グループ変更root@jsg-ubuntu:/home/jsg# chgrp teamdev2 testdir/hello.txt
root@jsg-ubuntu:/home/jsg# ls -l testdir/hello.txt
-rw-rw-r-- 1 jsg2 teamdev2 12 Dec 10 00:24 testdir/hello.txt
4.ファイル情報の確認
$ file file_name
:タイプ確認、magicデータ読み出しjsg@jsg-ubuntu:~$ file testdir/hello.txt
testdir/hello.txt: ASCII text
$ stat file_name
:ファイルメタデータ出力jsg@jsg-ubuntu:~$ stat testdir/hello.txt
File: 'testdir/hello.txt'
Size: 12 Blocks: 8 IO Block: 4096 일반 파일
Device: 801h/2049d Inode: 1175830 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/ jsg) Gid: ( 1000/ jsg)
Access: 2020-12-10 01:38:30.838601254 +0900
Modify: 2020-12-10 00:24:52.762704113 +0900
Change: 2020-12-10 01:07:50.481252194 +0900
Birth: -
5.ファイルの更新
$ touch file_name
:メタデータの更新jsg@jsg-ubuntu:~$ stat testdir/hello.txt
File: 'testdir/hello.txt'
Size: 0 Blocks: 0 IO Block: 4096 일반 빈 파일
Device: 801h/2049d Inode: 1175791 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/ jsg) Gid: ( 1000/ jsg)
Access: 2020-12-10 01:54:39.796622302 +0900
Modify: 2020-12-10 01:54:39.796622302 +0900
Change: 2020-12-10 01:54:39.796622302 +0900
Birth: -
jsg@jsg-ubuntu:~$ touch testdir/hello.txt
jsg@jsg-ubuntu:~$ stat testdir/hello.txt
File: 'testdir/hello.txt'
Size: 0 Blocks: 0 IO Block: 4096 일반 빈 파일
Device: 801h/2049d Inode: 1175791 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/ jsg) Gid: ( 1000/ jsg)
Access: 2020-12-10 01:55:19.872828519 +0900
Modify: 2020-12-10 01:55:19.872828519 +0900
Change: 2020-12-10 01:55:19.872828519 +0900
Birth: -
6.ファイルのコピー
$ cp file new_file
: (copy) jsg@jsg-ubuntu:~$ cp -r testdir testdir2
jsg@jsg-ubuntu:~$ ls
examples.desktop testdir2 다운로드 바탕화면 사진 템플릿
testdir 공개 문서 비디오 음악
7.ファイルの移動
$ mv file new_file
: (move) jsg@jsg-ubuntu:~$ mv testdir2/hello.txt testdir/hello2.txt; ls testdir
hello.txt hello2.txt
8.ファイルの削除
$ rm file_name
(remove) $ rmdir file_name
削除するにはディレクトリが空でなければならないため、あまり使われないjsg@jsg-ubuntu:~$ rm testdir/hello2.txt; ls testdir
hello.txt
9.ファイルの検索
$ find directory [expression]
:該当するファイルを目次で検索jsg@jsg-ubuntu:~$ mkdir ~/temp
mkdir: `/home/jsg/temp' 디렉토리를 만들 수 없습니다: 파일이 있습니다
jsg@jsg-ubuntu:~$ cd temp
jsg@jsg-ubuntu:~/temp$ for i in {8..21}; do dd bs=100000 count=$i \
if=/dev/zero of=./${i}00k.dat; done
jsg@jsg-ubuntu:~/temp$ ls -l
합계 19852
-rw-rw-r-- 1 jsg jsg 1000000 12월 10 02:11 1000k.dat
-rw-rw-r-- 1 jsg jsg 1100000 12월 10 02:11 1100k.dat
-rw-rw-r-- 1 jsg jsg 1200000 12월 10 02:11 1200k.dat
-rw-rw-r-- 1 jsg jsg 1300000 12월 10 02:11 1300k.dat
-rw-rw-r-- 1 jsg jsg 1400000 12월 10 02:11 1400k.dat
-rw-rw-r-- 1 jsg jsg 1500000 12월 10 02:11 1500k.dat
-rw-rw-r-- 1 jsg jsg 1600000 12월 10 02:11 1600k.dat
-rw-rw-r-- 1 jsg jsg 1700000 12월 10 02:11 1700k.dat
-rw-rw-r-- 1 jsg jsg 1800000 12월 10 02:11 1800k.dat
-rw-rw-r-- 1 jsg jsg 1900000 12월 10 02:11 1900k.dat
-rw-rw-r-- 1 jsg jsg 2000000 12월 10 02:11 2000k.dat
-rw-rw-r-- 1 jsg jsg 2100000 12월 10 02:11 2100k.dat
-rw-rw-r-- 1 jsg jsg 800000 12월 10 02:11 800k.dat
-rw-rw-r-- 1 jsg jsg 900000 12월 10 02:11 900k.dat
$ find ... -exec 명령어 \;
:find命令後タスク指示\;
1人1個、終了\+
最終運転であればjsg@jsg-ubuntu:~/temp$ find . -name "*k.dat" -exec rm {} \;
jsg@jsg-ubuntu:~/temp$ ls -a
. ..
Reference
この問題について(File/Directory), 我々は、より多くの情報をここで見つけました https://velog.io/@legendre13/File-Directoryテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol