首页 > 代码库 > 具体解释linux文件处理的的经常使用命令
具体解释linux文件处理的的经常使用命令
原创Blog。转载请注明出处
附上之前訪问量比較高的几篇linux博客
本人使用shell的8个小技巧
grep的九个经典使用场景
sed命令具体解释
awk命令具体解释
linux中全部的东西都是文件,命令就是一个一个二进制文件
1、ls
/bin/ls
经常使用选项
-a 全部文件(包含隐藏文件)
-l 具体信息
-d 文件夹属性
-i 查看inode
举例
[root@localhost testForCsdn]# ls fileList first second [root@localhost testForCsdn]# ls -a . .. fileList first second [root@localhost testForCsdn]# ls -l total 16 -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first -rw-r--r-- 1 root root 0 Oct 24 18:04 second [root@localhost testForCsdn]# ls -al total 32 drwxr-xr-x 2 root root 4096 Oct 24 18:04 . drwxr-x--- 17 root root 4096 Oct 24 17:56 .. -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first -rw-r--r-- 1 root root 0 Oct 24 18:04 second [root@localhost testForCsdn]# ls -d . [root@localhost testForCsdn]# ls -i 2256719 fileList 2256718 first 2256730 second分析下
-rw-r--r-- 1 root root 100 Oct 18 23:12 fileList对于这一行来说,从左至右分析
-表示这是一个二进制文件
rw-r--r-- 分别r表示读权限,w表示写权限,-表示没有权限。假设是x表示可运行权限,一共9个,三个一组。分别表示创建者,所属组,其它人
所以,对于创建者来说是rw-就是可读写不可运行,对于所属组就是r--仅仅有读的权限,其它人仅仅有读的权限
1表示硬链接数目
第一个root表示用户
第二个root表示用户组
100表示文件大小,假设是文件夹就是文件夹和子文件夹大小
Oct 18 23:13:12 表示最后改动的时间
fileList 表示文件名称
2、cd
change direction
和cd配合的经常使用命令还有
pwd 查看当前文件夹
改变文件夹
首先解说下文件夹
/ 根分区,全部的文件和文件夹都由此開始
/bin 用户可运行文件
/sbin 系统可运行文件,主要供管理员使用。s为super
/etc 配置文件
/dev 设备文件
/proc 进程信息。如/proc/cpuinfo包括了处理器信息
/var 变量文件如log,mail
/usr 用户程序。为用户应用程序存放文件
/home 用户主文件夹
/boot 启动载入项
/opt 可选应用
/mnt 挂载文件夹
/media 可移动媒体 如/media/cdrom
/srv 服务数据
举例
[root@localhost etc]# cd /etc/ [root@localhost etc]# pwd /etc [root@localhost etc]# cd ~ [root@localhost ~]# pwd /root这里要说明的是
cd ~代表回到当前登陆用户的主文件夹
假设是root回到/root/
假设是普通用户,回到/home/
3、touch
创建空白文件文件或者改动文件的时间戳
经常使用选项
-a 仅仅更改存取时间
-c 不建立不论什么文档
-d 使用指定的日期
-m 仅仅更改变动时间
-r 把指定文档的或者文件夹的日期时间改为和參考文档的同样
-t 设置指定的时间戳
举例
[root@localhost testForCsdn]# ls -l total 16 -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first -rw-r--r-- 1 root root 0 Oct 24 18:04 second [root@localhost testForCsdn]# touch thrid [root@localhost testForCsdn]# ls -l total 20 -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first -rw-r--r-- 1 root root 0 Oct 24 18:04 second -rw-r--r-- 1 root root 0 Oct 24 18:34 thrid [root@localhost testForCsdn]# touch -t 201410250935.40 thrid [root@localhost testForCsdn]# ls -l total 20 -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first -rw-r--r-- 1 root root 0 Oct 24 18:04 second -rw-r--r-- 1 root root 0 Oct 25 2014 thrid能够看到,用-t更改了时间戳
4 mkdir
创建一个文件夹
经常使用选项
-m 创建时候指定权限
-p 指定路径。假设该路径上有些文件夹不存在,则会创建。就是能够一次创建多层文件夹
-v 显示具体信息
举例
[root@localhost testForCsdn]# mkdir -m 777 firstDir [root@localhost testForCsdn]# ls -al total 44 drwxr-xr-x 3 root root 4096 Oct 24 18:41 . drwxr-x--- 17 root root 4096 Oct 24 17:56 .. -rw-r--r-- 1 root root 100 Oct 18 23:12 fileList -rw-r--r-- 1 root root 0 Oct 24 18:04 first drwxrwxrwx 2 root root 4096 Oct 24 18:41 firstDir -rw-r--r-- 1 root root 0 Oct 24 18:04 second -rw-r--r-- 1 root root 0 Oct 25 2014 thrid [root@localhost testForCsdn]# mkdir -p firstDir/secondDir/thridDir [root@localhost testForCsdn]# cd firstDir/secondDir/thridDir/ [root@localhost thridDir]# pwd /root/testForCsdn/firstDir/secondDir/thridDir能够看到。通过-p一次创建了多层文件夹。-m在创建文件夹的同一时候给予777的权限
5 cp
copy
经常使用选项
-b 删除覆盖目的文件的时候先备份
-i 询问是否覆盖
-P 保留源文件的或者文件夹的属性:全部者,所属组,权限时间
-r 复制文件夹
举例
[root@localhost testForCsdn]# ls fileList firstDir second thrid [root@localhost testForCsdn]# ls firstDir/ fileList second [root@localhost testForCsdn]# cp thrid firstDir/ [root@localhost testForCsdn]# cp -b fileList firstDir/ cp: overwrite `firstDir/fileList‘? y [root@localhost testForCsdn]# ls firstDir/ fileList fileList~ second thrid [root@localhost testForCsdn]# mkdir secondDic [root@localhost testForCsdn]# cp -r firstDir/ secondDic/ [root@localhost testForCsdn]# ls secondDic/ firstDir
顺便说下scp:举个样例
scp是远程拷贝,假设要远程复制文件夹用-r
scp -r root@192.168.0.12:~/testCSDN/ localCSDN/
把192.168.0.12的~/testCSDN复制到localCSND下
6、mv
剪切和重命名
举例
[root@localhost testForCsdn]# ls fileList firstDir second secondDic thrid You have new mail in /var/spool/mail/root [root@localhost testForCsdn]# mkdir tempDic [root@localhost testForCsdn]# ls fileList firstDir second secondDic tempDic thrid [root@localhost testForCsdn]# mv fileList newName [root@localhost testForCsdn]# mv newName tempDic/ [root@localhost testForCsdn]# ls firstDir second secondDic tempDic thrid [root@localhost testForCsdn]# ls tempDic/ newName
7 cat more
都是用来查看文件内容
cat适合较短的文件
More会分页查看:空格翻页。回车下一行。q退出
cat filename
more filename
8 head tail
查看文件的前几行,后几行
tail -f能够用来动态查看文件的后几行
举例
9 ln
创建软连接和硬链接
软链接:类似于windows中的快捷方式
硬链接:两个文件同步更新
软链接能够跨文件系统,硬链接不能够
举例
创建一个软连接
[root@localhost ~]# ln -s file.txt file.hardlink
创建一个硬链接
[root@localhost ~]# ln file.txt file.hardlink
能够看到。file.txt的硬链接数目变成了2
-rw-r--r-- 2 root root 210 Oct 19 07:54 file.hardlink lrwxrwxrwx 1 root root 8 Oct 24 19:14 file.softlink -> file.txt -rw-r--r-- 2 root root 210 Oct 19 07:54 file.txt然后。改动file.txt
在文件開始键入testCSDN
再查看硬链接
[root@localhost ~]# head -5 file.hardlink testForCSDN backup bin boot dev能够看到,同步更新了内容
具体解释linux文件处理的的经常使用命令