カタログ管理
絶対パスと相対パス
Linuxのディレクトリ構造はツリー構造であり、最上位のディレクトリはルートディレクトリ/です。
他のディレクトリは、マウントすることでツリーに追加でき、アンマウントすることで削除できます。
このチュートリアルを開始する前に、絶対パスと相対パスが何であるかを知る必要があります。
絶対パス:
パスはルートディレクトリ/から書き込まれます。例:/ usr / share / doc thisdirectory。
相対パス:
パスは/から書き込まれません。たとえば、/ usr / share / docから/ usr / share / manに移動する場合、次のように記述できます。cd…/ manこれは相対パスを書き込む方法です。
ディレクトリを処理するための一般的なコマンド
次に、ディレクトリを処理するためのいくつかの一般的なコマンドを見てみましょう。
- ls:ディレクトリを一覧表示します
- cd:ディレクトリの切り替え
- pwd:現在のディレクトリを表示します
- mkdir:新しいディレクトリを作成します
- rmdir:空のディレクトリを削除します
- cp:ファイルまたはディレクトリをコピーします
- rm:ファイルまたはディレクトリを削除します
- mv:ファイルとディレクトリを移動するか、ファイルとディレクトリの名前を変更します
man [command]を使用して、mancpなどの各コマンドのドキュメントを表示できます。
ls(ディレクトリのリスト)
Linuxシステムの中で、lsコマンドがおそらく最も頻繁に実行されます。
文法:
[root@www ~]# ls [-aAdfFhilnrRSt] 目录名称
オプションとパラメータ:
- -a:すべてのファイルと隠しファイル(。で始まるファイル)が一緒に一覧表示されます(一般的に使用されます)
- -l:ファイル属性やアクセス許可などを含む長いデータ文字列を一覧表示します;(一般的に使用されます)
ディレクトリ内のすべてのファイル(属性と隠しファイルを含む)を一覧表示します
[root@www ~]# ls -al ~
cd(ディレクトリの変更)
cdは、Change Directoryの略語で、作業ディレクトリを変更するために使用されるコマンドです。
文法:
cd [相对路径或绝对路径]
テスト:
# 切换到用户目录下
[root@kuangshen /]# cd home
# 使用 mkdir 命令创建 kuangstudy 目录
[root@kuangshen home]# mkdir kuangstudy
# 进入 kuangstudy 目录
[root@kuangshen home]# cd kuangstudy
# 回到上一级
[root@kuangshen kuangstudy]# cd ..
# 回到根目录
[root@kuangshen kuangstudy]# cd /
# 表示回到自己的家目录,亦即是 /root 这个目录
[root@kuangshen kuangstudy]# cd ~
次に、さらにいくつかの操作を行うと、cdコマンドを十分に理解できるはずです。
pwd(現在のディレクトリを表示します)
pwdは、現在のディレクトリを表示するコマンドであるPrint WorkingDirectoryの略語です。
[root@kuangshen kuangstudy]#pwd [-P]
オプションとパラメータ:-P:リンクパスを使用する代わりに実際のパスを表示します。
テスト:
# 单纯显示出目前的工作目录
[root@kuangshen ~]# pwd
/root
# 如果是链接,要显示真实地址,可以使用 -P参数
[root@kuangshen /]# cd bin
[root@kuangshen bin]# pwd -P
/usr/bin
mkdir(新しいディレクトリを作成します)
新しいディレクトリを作成する場合は、mkdir(ディレクトリの作成)を使用します。
mkdir [-mp] 目录名称
オプションとパラメータ:
- -m:設定ファイルの許可!直接設定、デフォルトの権限(umask)の面を見る必要はありません〜
- -p:必要なディレクトリ(上位ディレクトリを含む)を再帰的に直接作成するのに役立ちます!
テスト:
# 进入我们用户目录下
[root@kuangshen /]# cd /home
# 创建一个 test 文件夹
[root@kuangshen home]# mkdir test
# 创建多层级目录
[root@kuangshen home]# mkdir test1/test2/test3/test4
mkdir: cannot create directory ‘test1/test2/test3/test4’:
No such file or directory # <== 没办法直接创建此目录啊!
# 加了这个 -p 的选项,可以自行帮你创建多层目录!
[root@kuangshen home]# mkdir -p test1/test2/test3/test4
# 创建权限为 rwx--x--x 的目录。
[root@kuangshen home]# mkdir -m 711 test2
[root@kuangshen home]# ls -l
drwxr-xr-x 2 root root 4096 Mar 12 21:55 test
drwxr-xr-x 3 root root 4096 Mar 12 21:56 test1
drwx--x--x 2 root root 4096 Mar 12 21:58 test2
rmdir(空のディレクトリのみを削除できます)
文法:
rmdir [-p] 目录名称
オプションとパラメータ:**-p:**上位レベルの「空の」ディレクトリと一緒に削除します
テスト:
# 看看有多少目录存在?
[root@kuangshen home]# ls -l
drwxr-xr-x 2 root root 4096 Mar 12 21:55 test
drwxr-xr-x 3 root root 4096 Mar 12 21:56 test1
drwx--x--x 2 root root 4096 Mar 12 21:58 test2
# 可直接删除掉,没问题
[root@kuangshen home]# rmdir test
# 因为尚有内容,所以无法删除!
[root@kuangshen home]# rmdir test1
rmdir: failed to remove ‘test1’: Directory not empty
# 利用 -p 这个选项,立刻就可以将 test1/test2/test3/test4 依次删除。
[root@kuangshen home]# rmdir -p test1/test2/test3/test4
注:このrmdirは空のディレクトリのみを削除できます。rmコマンドを使用して空でないディレクトリを削除できます。後で削除します。
cp(ファイルまたはディレクトリのコピー)
文法:
[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory
オプションとパラメータ:
- **-a:** -pdrの意味に相当し、pdrについては、次の手順を参照してください;(一般的に使用されます)
- **-p:**デフォルトの属性(バックアップに使用)を使用する代わりに、ファイルの属性と一緒にコピーします。
- **-d:**ソースファイルがリンクファイルの場合、ファイル自体ではなくリンクファイルの属性をコピーします。
- **-r:**再帰的連続コピー、ディレクトリコピー動作に使用;(一般的に使用)
- **-f:**は強制を意味します。ターゲットファイルがすでに存在し、開くことができない場合は、それを削除して再試行してください。
- **-i:**宛先ファイル(宛先)がすでに存在する場合、上書き時に最初にアクションが要求されます(一般的に使用されます)
- **-l:**ファイル自体をコピーする代わりに、ハードリンクリンクファイルを作成します。
- **-s:**「ショートカット」ファイルであるシンボリックリンク(シンボリックリンク)にコピーします。
- **-u:**宛先がソースより古い場合にのみ、宛先をアップグレードしてください。
テスト:
# 找一个有文件的目录,我这里找到 root目录
[root@kuangshen home]# cd /root
[root@kuangshen ~]# ls
install.sh
[root@kuangshen ~]# cd /home
# 复制 root目录下的install.sh 到 home目录下
[root@kuangshen home]# cp /root/install.sh /home
[root@kuangshen home]# ls
install.sh
# 再次复制,加上-i参数,增加覆盖询问?
[root@kuangshen home]# cp -i /root/install.sh /home
cp: overwrite ‘/home/install.sh’? y #如果文件重复,n不覆盖,y为覆盖
rm(ファイルまたはディレクトリを削除する)
文法:
rm [-fir] 文件或目录
オプションとパラメータ:
- -f:強制を意味し、存在しないファイルを無視し、警告メッセージは表示されません。
- -i:インタラクティブモード、ユーザーは削除する前に行動するかどうか尋ねられます
- -r:再帰的に削除します!ディレクトリの削除で最も一般的に使用されます!これは非常に危険なオプションです!!!
テスト:
# 将刚刚在 cp 的实例中创建的 install.sh删除掉!
[root@kuangshen home]# rm -i install.sh
rm: remove regular file ‘install.sh’? y
# 如果加上 -i 的选项就会主动询问喔,避免你删除到错误的档名!
#rm -rf / #尽量不要在服务器上使用,系统中所有的文件都会被删除,删库跑路就是这么操作的!
mv(ファイルとディレクトリを移動するか、名前を変更する)
文法:
[root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory
オプションとパラメータ:
- -f:強制とは、ターゲットファイルがすでに存在する場合、要求せずに上書きされることを意味します。
- -i:宛先ファイルがすでに存在する場合は、上書きするかどうかを尋ねられます。
- -u:ターゲットファイルがすでに存在し、ソースが比較的新しい場合、更新されます(更新)
テスト:
# 复制一个文件到当前目录
[root@kuangshen home]# cp /root/install.sh /home
# 创建一个文件夹 test
[root@kuangshen home]# mkdir test
# 将复制过来的文件移动到我们创建的目录,并查看
[root@kuangshen home]# mv install.sh test #移动文件
[root@kuangshen home]# ls
test
[root@kuangshen home]# cd test
[root@kuangshen test]# ls
install.sh
# 将文件夹重命名,然后再次查看!
[root@kuangshen test]# cd ..
[root@kuangshen home]# mv test mvtest #重命名
[root@kuangshen home]# ls
mvtest