linux基础命令笔记
配置IP地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0
忘记root密码grub e 选择kernel按e 输入single b
1:目录及文件的基本操作
---------------------------------
pwd 显示当前工作目录
-P 显示连接真实路径
---------------------------------
cd 切换当前工作目录
cd .. 返回上一级
cd 返回家目录
---------------------------------
ls 显示目录和文件信息
-a 显示所有信息包括隐藏文件
-d 显示目录本身,不显示文件信息
-h 显示容量信息,KB、MB
-c 显示目录和文件最后修改时间
-u 显示目录和文件最后访问时间
-t 以修改时间排序,默认按文件名称排序
ls要加l d h c u t参数才有用
---------------------------------
touch 创建或修改文件时间
文件不存在则创建文件,如果已存在就更新文件为当前时间
---------------------------------
mkdir 创建目录
-p 创建多级目录
---------------------------------
cp复制文件和目录
mv hello.txt hello.doc 重命名
mv hello.doc /root移动
---------------------------------
cp 源 目标
-r递归,复制子文件与子目录,复制目录使用
cp /etc/hsots /tmp/host 复制并改名
cp -r /var/log /tmp
cp /etc/hosts /tmp
---------------------------------
rm 删除文件或目录
-f 不提示,强制删除
-i 删除前,提示是否删除
-r 删除目录以及目录下的所有内容,递归
---------------------------------
mv 移动(重命名)文件或目录
mv hello.txt hello.doc重命名
mv hello.doc /root移动
---------------------------------
find 搜索文件或目录
-empty 查找空白文件或目录
-group 按组查找
-name 按名称查找
-iname 按名称查找,不区分大小写
-mtime 按修改时间查找
-size 按容量大小查找
-type 按文件类型查找,文件f目录d
-user 按用户查找
-exec 对找到的文件和目录执行命令
-a 并且
-o 或者
find - name hell0.doc查找当前目录hello.doc的文件和目录
find /root -name "*.log" =查找/root目录下的以.log结尾的文件和目录
find -iname "hello" 不区分大小写查找文件和目录hello
find / -empty查找根目录所有的空文件和目录
find / -group tom 查找计算机所属组为tom的文件和目录
find / -mtime -3 查找3天内修改过的文件和目录
find / -mtime +4 查找4天前修改的文件和目录
find / -mtime 2 查找2天前的当天修改过的文件和目录
find ./ -size +10M 查找当前目录大于10MB的文件和目录
find ./ -type f 查找当前目录的普通文件
find / -user tom 查找计算机中tom的文件和目录
find / -size +1M -exec ls -l{} \; 查找大于1MB的文件后列出文件的详细信息
find / -size +1M -a -type f 查找计算机所有大于1MB的文件
find /tmp -name "*.log" -type f 查找/tmp目录下所有.txt结尾的文件
find /tmp -name "*.log" -type d 查找/tmp目录下所有.txt结尾的目录
find /tmp/ -name "*.log" -type f -size +1M 查找/tmp目录下所有.txt结尾大于1M的文件
find /tmp/ -name "*.log" -type f -size +1M -exec cp {} /root \; 查找/tmp目录下所有.txt结尾大于1M的文件拷贝到root目录下
find /tmp/ -name "*.log" -type f -size +1M -mtime +30 -exec rm -rf {} \; 查找/tmp目录下所有.txt结尾大于1M的30天以上的全部删除
find /tmp/ -name "*.log" -mtime +30 -exec rm -rf {} \; /tmp/下50分钟以上的文件全部删除
---------------------------------
du 计算文件或目录的容量
-h 显示容量信息
-s 仅显示总容量
du /root du -sh /root
---------------------------------
2:查看文件内容
---------------------------------
cat 查看文件内容
-b 显示行号,空白行不显示行号
-n 显示行号,包括空白行
---------------------------------
more 分页查看文件内容,通过空格键查看下一页,q键则退出查看
---------------------------------
less 分页查看文件内容,空格(下一页),方向键(上下回键),q键(退出查看)
---------------------------------
head 查看文件头部内容,默认显示前10行
-c nK 显示文件前nKB的内容
-n 显示文件前n行的内容
head -c 2K /root/install.log 查看文件前2KB的内容
head -20 /root/install.log 查看文件前20行的内容
---------------------------------
tail 查看文件的尾部内容,默认显示末尾10行
-c nK 显示文件末尾nKB的内容
-n 显示文件末尾n行的内容
-f 动态显示文件内容,按Ctrl+C组合键退出
tail -c 2K /root/install.log 查看文件末尾2KB的内容
tail -20 /root/install 查看文件末尾20行的内容
tail -f /var/log/messages 实时查看文件内容
---------------------------------
wc 显示文件的行、单词与字节的统计信息
-c 显示文件字节统计信息
-l 显示文件行数统计信息
-w 显示文件单词统计信息
---------------------------------
grep 查找关键词并打印匹配的行
-i 忽略大小写
-v 取反匹配
-w 匹配单词
--color 显示颜色
grep th test.txt在test.txt文件中过滤包含th的行
grep --color th test.txt 对匹配的关键词显示颜色
grep -i the test.txt 过滤包含the的行(不区分大小写)
grep -w num test.txt 过滤单词num(不过滤number)
grep -v the test.txt过滤不包含the关键词行
---------------------------------
echo 显示一行指定的文本
-n 不输出换行,默认echo输出内容后会换行
-e 支持反斜线开始的转义字符,屏蔽反斜线后面字符的原本含义
---------------------------------
3:连接文件
---------------------------------
软连接和硬连接
软连接可以跨分区,源文件不可删除
硬连接不可以跨分区,但可以将源文件删除
软连接
ln -s /test/hello.txt /tmp/hi.txt 创建文件软连接
ln -s /test/ /var/test c/创建目录软连接
硬连接
ln /test/hello.txt /test/hi.txt
rm /test/hello.txt 删除源文件,链接文件正常使用
---------------------------------
4:压缩及解压
---------------------------------
gzip 压缩与解压缩
-d 解压
gzip hello.txt 文件压缩为hello.txt.gz
gzip -d hello.tz 解压gz文件
gzip -9 file1 最大程度压缩
unzip file1.zip 解压一个zip格式压缩包
---------------------------------
bzip2 解压与解压缩
-d解压
bizp2 hello.txt 文件压缩为hello.txt.bz2
bizp2 -d hello.txt.bz2 解压bz2文件
---------------------------------
gzip与bzip2工具不可以对目录做打包压缩操作
---------------------------------
tar 打包与解包文件
-c 创建打包文件
--delete 从打包文件中删除文件
-r 追击文件至打包文档
-t 列出对包文档的内容
-x 释放打包文件
-C 指定解压路径
-f 指定打包的文件名称
-j 打包后通过bzip2格式压缩
--remove-files 打包删除源文件
-z 打包后通过gzip格式压缩
tar -cf etc.tar /etc 将/etc/目录打包保存为etc.tar
tar -czf boot.tar.gz /boot 将/boot目录打包并压缩为boot.tar.gz
tar -cjf etc.tar.bz2 /tmp 将/tmp/目录打包并压缩etc.tar.bz2
tar --delete etc/hosts -f etc.tar 从打包文档中删除文件hsots
tar -f etc.tar -r /root/install.log 追加文件至打包文档etc.tar中
tar -tf boot.tar.gz 查看打包文档中的信息
tar -tvf etc.tar 查看打包文档中的详细信息
tar -xzf boot.tar.gz 解压gz格式的打包文档至当前目录
tar -xjf etc.tar.bz2 解压bz2格式的打包文档至当前目录
tar -xzf boot.tar.gz -C /tmp 指定解压路径为/tmp
tar -czf mess.tar.gz /var/log/messages --remove-files 打包压缩后删除源文件
---------------------------------
4:命令使用技巧
---------------------------------
使用tab键:
使用历史命令:history
清屏:clear
查找命令存放位置:which find
数字相加:expr 1 + 1
产生从某个数到另外一个数之间的所有整数:seq 1 10 结果是1 2 3 4 5 6 7 8 9 10
5:vi编辑器
---------------------------------
1、vi test.txt进入esc模式(全局模式)
2、按i进入输入模式
写入内容,完毕后按esc模式进入全局模式。
需要进入命令行模式:wq(保存退出)
yy复制
p粘贴
dd删除
u返回,恢复。
2yy复制两行
/word查找,按n往下找,shift+n向上找。
G跳转到最后
gg跳转首行
:5 跳转到第五行。
0跳转到行前,$跳转末尾,^跳转到行首。
yG复制光标至末行。
ygg复制光标至首行
:%d清空所有内容
o 在当前行后插入一行
O 在当前行前插入一行
:s/this/that/g 将this替换为that,前提是光标一定要移到那一行
:s/this/that 将这一行中的第一次出现的this替换为that,也就是说只替换第一个
:1,$ s/is/are/g 第一行到最后一行中的is替换为are
:1,2,3 s/is/are/g 将第一行第二行第三行中的is改为are