Linux常用文件命令整理
-
进入local目录
cd local/
-
返回上级目录
cd ..
-
返回上两级目录
cd ../..
-
返回上次所在的目录
cd -
-
显示工作路径
pwd
-
查看目录中的文件
ls
-
查看目录中的文件 (一下几种都可以查看)
ls ls -F 查看目录中的文件 ls -l 显示文件和目录的详细资料 ls -a 显示隐藏文件
-
显示包含数字的文件名和目录名
ls *[0-9]*
-
显示文件和目录由根目录开始的树形结构
tree
.一下是展示 /usr/local/shared的目录结构
├── aliyun-assist
│ └── 1.0.1.259
│ ├── aliyun_assist_update
│ ├── aliyun_installer
│ ├── aliyun-service
│ ├── config
│ │ ├── GlobalSignRootCA.crt
│ │ └── host.conf
│ └── log
│ ├── aliyun_assist_main.log
│ └── aliyun_assist_update.log
├── applications
├── info
└── man
├── man1
├── man1x
├── man2
├── man2x
├── man3
├── man3x
├── man4
├── man4x
├── man5
├── man5x
├── man6
├── man6x
├── man7
├── man7x
├── man8
├── man8x
├── man9
├── man9x
└── mann -
创建一个叫做 ‘tets’ 的文件夹
mkdir test
-
同时创建两个文件夹
mkdir test1 test2
-
创建一个目录树
mkdir -p /test/dir1/dir2
[root@iz2ze06kmfgcyg4afunsqaz dir2]# pwd
/test/dir1/dir2 -
删除一个叫做 ‘a.txt’ 的文件’
rm -f a.txt
-
删除一个叫做 ‘dir2’ 的目录’
rmdir dir2
-
删除一个叫做 ‘dir2’ 的目录以及该目录下的所有文件’
rm -rf dir2
-
重命名/移动 一个目录
mv dir1 new_dir
-
复制一个文件
cp file1 file2
-
复制一个目录下的所有文件到当前工作目录
cp /lucky/logs/all.log .
-
复制一个目录到当前工作目录
cp -a /tmp/dir1 .
-
创建一个指向文件或目录的软链接 (ln -s 源文件 目标文件。)
ln -s /lucky .
drwxr-xr-x 2 root root 4096 3月 4 10:01 dir1
lrwxrwxrwx 1 root root 6 3月 4 10:15 lucky -> /lucky
drwxr-xr-x 2 root root 4096 3月 4 09:53 test1
drwxr-xr-x 2 root root 4096 3月 4 09:53 test2 -
创建一个指向文件或目录的物理链接(ln 源文件 链接名)
ln /lucky .
硬链接和软链接的区别
1.原理上:
硬链接(hard link):A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件名指向同一个文件,A和B对文件系统来说是完全平等的。如果删除了其中一个,对另外一个没有影响。每增加一个文件名,inode节点上的链接数增加一,每删除一个对应的文件名,inode节点上的链接数减一,直到为0,inode节点和对应的数据块被回收。注:文件和文件名是不同的东西,rm A删除的只是A这个文件名,而A对应的数据块(文件)只有在inode节点链接数减少为0的时候才会被系统回收。
软链接(soft link):A是B的软链接(A和B都是文件名),A的目录项中的inode节点号与B的目录项中的inode节点号不相同,A和B指向的是两个不同的inode,继而指向两块不同的数据块。但是A的数据块中存放的只是B的路径名(可以根据这个找到B的目录项)。A和B之间是“主从”关系,如果B被删除了,A仍然存在(因为两个是不同的文件),但指向的是一个无效的链接。
2.使用限制上:
硬链接:a.不能对目录创建硬链接,原因有几种,最重要的是:文件系统不能存在链接环(目录创建时的"…"除外,这个系统可以识别出来),存在环的后果会导致例如文件遍历等操作的混乱(du,pwd等命令的运作原理就是基于文件硬链接,顺便一提,ls -l结果的第二列也是文件的硬链接数,即inode节点的链接数)
b:不能对不同的文件系统创建硬链接,即两个文件名要在相同的文件系统下。
c:不能对不存在的文件创建硬链接,由原理即可知原因。
软链接:a.可以对目录创建软链接,遍历操作会忽略目录的软链接。
b:可以跨文件系统
c:可以对不存在的文件创建软链接,因为放的只是一个字符串,至于这个字符串是不是对于一个实际的文件,就是另外一回事了
3.命令
硬:ln 源文件 链接名
软:ln -s 源文件 链接名