目录及文件操作:
1、查看文件或目录
ls [选项] [目录或文件]
常用选项:
-a 显示指定目录下所有子目录与文件
-l 列出指定目录下所有目录及文件的详细信息
使用 ls –l 命令显示的信息中 ,开头是由 10 个字母构成的字符
串,其中第一个字符表示文件类型,它可以是下列类型之一:
- :普通文件
d : 目录
l :符号链接
b :块设备文件
c :字符设备文件
p :命名管道
s :socket 文件
2、改变工作目录
cd [目录名] //该变工作目录
eg: cd /home/user/test
常用的切换目录命令:
cd .. 到父目录
cd / 到根目录
cd ~ 到用户主目录下,与直接执行cd效果相同
cd - 到上一次目录
pwd 显示当前目录
mkdir [选项] dirname 创建目录
rmdir [选项] dirname 删除空目录
3、拷贝文件或目录
cp [选项] 源文件或目录 目标文件或目录
//将指定的源文件复制到目标文件或将多个源文件复制到目标目录中
常用参数:
-f 若目标目录中存在与源文件同名的文件,则直接覆盖,不用提示
-i 和-f相反,会进行提示
-r 如果要拷贝的是一个目录,此时将同时拷贝该目录下的子目录和文件
4、移动文件或者目录
mv [选项] 源文件或目录 目标文件或目录
参数选项和cp中含义相同
5、删除文件或目录
rm [选项] 文件或目录
参数:
-f 删除过程中不会给出提示
-r 删除一个目录以及它的子目录
6、改变目录或文件的权限
对于文件权限:
第一组为文件所有者权限(u)
第二组为同组用户权限(g)
第三组为其他用户权限(o)
r可读 w可写 x可执行
数字设定法:
0表示没有权限
1表示可执行权限(x)
2表示可写权限(w)
4表示可读权限(r)
eg: chmod 664 test -rw-rw-r-
7、文件查找
find 起始目录 查找条件 操作
查找条件:and
eg: find /home/user -name file1 -a -type d
在/home/usr目录下查找名为file1并且类型是一个目录的文件
查找条件:or
eg: find /home/user -name main.cc -o -name main.c
常用的查找条件:
(1)根据名称和文件属性进行查找
-name 查找文件名匹配所给字串的所有文件,字串内可用通配符*、?、[]
(2)根据时间查找
-amin n 查找n分钟前被访问过的所有文件
-cmin n 查找n分钟前文件状态被修改过的所有文件
-mmin n 查找n分钟以前文件内容被修改过的所有文件
(3)可执行操作
在/home/usr目录下查找名为main.c文件并显示这些文件信息
eg: find /home/usr -name main.c|xargs ls -l
df -h 显示整个磁盘使用情况
du -h 文件名 显示每个文件和目录的磁盘使用空间
du -h --max-depth=0 /home/user 显示当前目录
8、查看文件内容
cat [选项] [文件]
选项参数:
-b 对非空输出行编号
-E 在每行结束处显示$
-n 对输出的所有行编号
-s 不输出多行空行
eg: cat test.c
重定向符号:
<重定向输入
>重定向输出
>>添加输出
2>错误重定向
&>错误和信息重定向
cat 常和重定向一起使用,>表示创建,>>表示追加,<<表示以什么结束
如果 cat 的命令行中没有参数,它就会从标准输入中读取数据,并将其送到标准输出。
9、创建文件
linux 中创建空文件的四种方式:
方式 1: echo > test
方式 2: touch test
方式 3: cat > test ctrl+c
方式 4: vim test wq
统计指定文件中的字节数、字数、行数
wc [选项] [文件名]
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串
10、搜索文件内容:
grep [选项] [查找模式] [文件1,文件2,……]
grep过滤器查找指定字符模式的文件,并显示含有此模式的所有行,被寻找的模式为正则表达式
^ :以什么开头
eg: ls -l | grep ^d
显示当前目录下的所有子目录的详细信息
$ :以什么结尾
eg: ls –l | grep c$
显示当前目录下以 c 结尾的文件。
常用的参数:
-F 每个模式作为固定的字符串对待
-c 只显示匹配行的数量。
-i 比较式不区分大小写。
-n 在输出前加上匹配串所在的行号。
其他命令:
1、管道
管道:是重定向的一种,将一个程序或命令的输出作为令一个程序或命令的输入
eg: ls -l /etc | wc -w
2、文件或目录的创建掩码
umask指文件(0666)或目录(0777)创建时在全部权限中需要去掉的一些权限,
普通用户缺省时umask的值为002,超级用户为022
002表示创建目录时所有者权限不去掉,所属组权限不去掉,其他组权限写属性去掉
创建一文件后,普通用户缺省的权限为664,超级用户:644
创建一目录以后,普通用户缺省的权限为775,超级用户:755
可以通过umask查看默认的缺省的掩码值,通过umask 001修改掩码值
3、文档管理
tar可以将一些文件和目录打包成一个文档,或者向文档中加入新的文件
常用参数:
c: 创建新的文档
r: 把存档的文件追加到文档的末尾
x: 从文档中释放文件
f: 使用文档或者设备
v: 在归档过程中显示处理的文件
z: 用gzip来压缩文件,后缀名为.gz
tar cfv source.tar /home/usr/*.c
//将该路径下的所有.c文件归档到source.tar
tar xfv source.tar
//将归档后的文件source.tar释放
tar cfvz source.tar.gz /home/usr/*.c
//在归档过程中还需要压缩
tar xfvz source.tar.gz
//释放归档后的压缩文件
4、文件压缩解压
gzip [选项] 压缩或解压缩的文件名
-d: 将压缩文件进行解压
-v: 在压缩或解压过程中显示解压或压缩的文件
eg: gzip -v test.c
eg: gzip -dv test.c
5、scp远程copy文件命令
scp filename username@ip:path
filename:文件名称
username:copy到的目标主机的用户名
ip:目标主机ip
path:目标主机路径
scp file1 xiongda@192.168.XX,XX:~/ 从本地copy到其他机器
scp xiongda@192.168.XX,XX:~/file1 . 从其他机器copy到本机