linux学习历程
2019年9月4日
文件系统方面的命令
- pwd查看当前目录
- ls命令
命令 | 效果 |
---|---|
ls | 输出的列表是按照字母排序的(按照列排序而不是行排序) |
ls -a | 显示隐藏文件 |
ls -R | 递归显示 |
ls -l | 输出长列表 |
ls -F | 区分文件和目录 |
ls -l my_script | 过滤输出列表,查询特定名称的文件(其中?代表一个字符,*代码零个或者多个字符) |
常见的多个参数的混合使用如:
ls -alF
- 处理文件的命令
命令 | 效果 |
---|---|
touch | 创建文件 |
cp source destination | 复制文件 |
cp -i source destination | 提示是否覆盖源文件 |
cp /etc/NetwirkMa/ss/s.conf . | 将很长的一个目录的文件复制到当前目录(当前目用(.)小数点表示) |
学会用man命令
比如man cp man ls能看到详细的命令参数
- 制表键自动补齐命令
- 链接文件(符号链接(软链接)和硬链接)
命令 | 效果 |
---|---|
ln -s data_file s1_data_file | 创建符号(软)链接 |
ln data_1 data_2 | ln不需要额外的参数创建硬链接 |
- 重命名文件(移动)
命令 | 效果 |
---|---|
mv fall fzll | 重命名文件但是时间戳保持不变 |
mv fzz Picture/ | 移动文件到Picture目录 |
mv -i fzz pic/ | 在有覆盖的情况下会有提示 |
mv /home/wx/pic/fall /home/wx/fell | 将文件夹移动位置并且改了名称 |
- 删除文件
命令 | 效果 |
---|---|
rm -i fall | i是提示是不是真的要删除。bash shell没回收站 删了就是真的没了 |
rm -f f?ll | 强制删除,没有提示 |
- 创建目录
命令 | 效果 |
---|---|
mkdir NewDir | 创建新的目录 |
mkdir -p new_dir/sub_dir/uder_dir | 创建多个子目录使用参数p不然会报错 |
- 删除目录
命令 | 效果 |
---|---|
rmdir | 删除目录(只能删除空目录) |
rm -ir Small_dir | 递归删除文件和目录(i是提示) |
rm -rf | 没有提示递归删除,慎用!!! |
删除目录之前可以用tree命令查看目录结构如:tree Small_Dir
- 查看文件类型
命令 | 效果 |
---|---|
file | 查看文件(文件或者目录)类型 |
- 查看文件内容
命令 | 效果 |
---|---|
cat test1 | 查看test1的内容 |
cat -n test1 | 给每一行加上行号 |
cat -b test1 | 只给有文本的行加上行号 |
cat -T test1 | 不想有制表符出现(会用^I替换文中所有的制表符) |
more test1 | 弥补cat命令在大型文件上显示的不足(按q退出) |
less | more的升级版(less is more) |
需要知道详细的参数就用man命令
- 查看部分文件
命令 | 效果 |
---|---|
tail | 显示文件的末尾的(默认情况下显示末尾的10行) |
tail -n | 加行号 |
head | 显示开头 |
head -5 test1 | 显示五行,tail也有类似用法 |
监测磁盘空间
- mount命令
mount命令会输出当前系统上挂载的设备列表,具体参数此处略去
- umount命令
从Linux系统上移除一个可移动设备的时候不能直接从系统上移除要先卸载
-df命令
df命令会显示每个有数据的已挂载的文件系统。
处理数据文件
- 排序数据
命令 | 效果 |
---|---|
sort file1 | 排序file1文件(默认把数字识别是字符) |
sort -n file1 | 排序(告诉sort把数字识别成数字而不是字符) |
sort -M file3 | 排序日期(sort 能够识别三个字符的月份,如Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec) |
还有很多命令用man命令去查看
- 搜索数据
命令 | 效果 |
---|
grep [options]pattern[file]
grep命令会在输入或指定的文件中查找包换匹配制定模式的字符的行。
输出不匹配的行可以使用-v参数
如果想知道有多少次匹配用-c
加行号-n
指定多个匹配模式用-e,如:
grep -e t -e f file1
在file文件中找包含t和f的行
- 压缩数据
命令 | 效果 |
---|---|
gzip | 压缩文件 |
gzcat | 用来查看压缩过的文本文件的内容 |
gunzip | 解压文件 |
示例
gzip my* 压缩多个文件
- 归档数据tar命令
命令格式
tar function [options] object1 object2 ....
tar命令的功能
功能 | 长名称 | 描述 |
---|---|---|
-A | --concatenate | 将一个已有的tar归档文件追加到另外一个已有的tar归档文件 |
-c | --create | 创建一个新的tar归档文件 |
-d -diff | j检查归档文件和文件系统的不同之处 | |
-d | --delete | 从已有的tar归档文件中删除 |
-r | --append | 追加文件到已有的tar归档文件的末尾 |
-t | --list | 列出已有的tar归档文件的内容 |
-u | --update | 将比tar归档文件中已有的同名文件新的文件追加到该tar归档文件中 |
-x | --extract | 从已有的tar归档文件中提取文件 |
tar命令的选项
选项 | 描述 |
---|---|
-C dir | 切换到指定目录 |
-f file | 输出结果到文件或设备file |
-j | 将输出重定向给bzip2命令来压缩内容 |
-p | 保留所有文件权限 |
-v | 在处理文件时显示文件 |
-z | 将输出重定向给gzip命令来压缩内容 |
这些选项常常一起使用诸如:
tar -cvf test.tar test/test2/
上面的命令创建了test.tar归档文件,含有test和test2的内容
tar -tf test.tar
列出tar文件test.tar的内容(但并不提取文件)。
tar -xvf test.tar
提取test.tar中的内容
很多开源的软件打开以后,会看到.tgz结尾的文件,这些都是gzip压缩过的tar文件,可以使用
tar -zxvf filename.tgz
来解压