文件查看命令
cat命令
cat <filename>:从前往后输出文件内容
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ cat file
hello
world
1111
2222
3333
4444
5555
6666
7777
8888
9999
0000
aaaa
bbbb
cccc
dddd
eeee
ffff
gggg
hhhh
iiii
jjjj
llll
tac命令
tac<filename>:从后往前输出文件内容
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ tac file
llll
jjjj
iiii
hhhh
gggg
ffff
eeee
dddd
cccc
bbbb
aaaa
0000
9999
8888
7777
6666
5555
4444
3333
2222
1111
world
hello
more命令
more<filename>:分页显示 ,按enter键向前显示,而且只能向前,不能向后显示
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ more file
hello
world
1111
2222
3333
4444
5555
6666
7777
8888
9999
--More--(48%)
less命令
less<filename>:可以通过上下键或者(j和k键)上下翻动,不必读整个文件,加载速度比more命令更快。
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ less file
9999
0000
aaaa
bbbb
cccc
dddd
eeee
ffff
gggg
hhhh
iiii
jjjj
llll
(END)
head命令
head<filename>:显示前面几行内容(默认是前10行)
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ head file
hello
world
1111
2222
3333
4444
5555
6666
7777
8888
硬链接和软链接
硬链接
硬链接是利用Linux中为每个文件分配的物理编号——inode建立链接。因此,硬链接不能跨越文件系统。
用命令ls -i filename查看inode号,文件名前面的数字就是inode号:
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ ls -i file
181 file
ln命令
ln filename filename_hard:给文件filename创建硬链接filename_hard
zdj@zdj-virtual-machine:~/Desktop$ ls
file vmware-tools-distrib
zdj@zdj-virtual-machine:~/Desktop$ ls -i file
789545 file
zdj@zdj-virtual-machine:~/Desktop$ ln file file_hard
zdj@zdj-virtual-machine:~/Desktop$ ls
file file_hard vmware-tools-distrib
zdj@zdj-virtual-machine:~/Desktop$ ls -i file_hard
789545 file_hard
文件filename和硬链接文件filename_hard的inode号一样。
软链接(符号链接)
软链接(符号链接)是利用文件的路径名建立链接,类似于Windows系统上的快捷方式。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性。
ln -s 命令
ln -s filename filename_soft:给文件filename创建硬链接filename_soft
zdj@zdj-virtual-machine:~/Desktop$ ls
file file_hard vmware-tools-distrib
zdj@zdj-virtual-machine:~/Desktop$ ls -i file
789545 file
zdj@zdj-virtual-machine:~/Desktop$ ln -s file file_soft
zdj@zdj-virtual-machine:~/Desktop$ ls -i file_soft
792077 file_soft
zdj@zdj-virtual-machine:~/Desktop$ ls
file file_hard file_soft vmware-tools-distrib
文件filename和硬链接文件filename_soft的inode号不一样。
注意
在编译VMware下的Linux系统对从Windows中共享过来的文件进行硬链接编译时,会遇到:
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ ln file file_hard
ln: failed to create hard link 'file_hard' => 'file': Operation not permitted
进行软连接编译时,会遇到:
zdj@zdj-virtual-machine:/mnt/hgfs/share/study/Level3/Day4$ ln -s file file_soft
ln: failed to create symbolic link 'file_soft': Operation not supported
有个解决办法就是,在VMWare下的Linux中,建立Samba服务,然后创建新samba用户和文件夹,在windows中就可以访问到该文件夹了。然后在Linux中,从共享目录拷贝到你所要共享的samba目录中,这样,也可以实现我们所要的文件共享。此时再去编译这些代码就可以了。
最简单的办法就是不在文件共享环境中建立一些硬链接或软链接。
硬链接和软连接的区别
- 如果是修改硬链接的目标文件名,链接依然有效;
- 如果修改软链接的目标文件名, 则链接将断开,目标文件名再改回来,则链接恢复;
- 对一个已存在的链接文件执行移动或删除操作,有可能导致链接的断开。
- 假如删除目标文件后,重新创建一个同名文件,软链接将恢复,硬链接不再有效,因为文件的inode已经改变。