linux基本命令学习笔记


0.ls -lh
人性化显示当前目录下文件的属性

1.链接:
硬链接(本身即文件指针,和原文件指针等价)
ln filename1 filename2
软链接(本身是指针,创建了指向原文件的指针)
ln -s 绝对路径 filename2

2.搜索:
文件搜索
locate(速度快,但只能按文件名搜索)
数据库中搜索 /var/lib/mlocate 每天更新一次
强制更新 updatedb 或 locate locate
配置文件 /etc/updatedb.conf

find(强大,慢、难)
find path -name filename
(-iname 不区分大小写
-user 按所有者搜索
-nouser 搜索没有所有者的文件,
垃圾文件或内核文件或外来文件
)
搜索内容完全匹配,否则加通配符 * ? []
eg: find /root -name "ab[cd]"

find /var/log/ -mtine +10
查找10天前修改的文件
(-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件

-atime 文件访问时间
-ctime 改变文件属性
-mtime 修改文件内容
-size 文件大小 k M
-inum i节点查文件名
)

find /etc -size +20k -a -size -50k
-a 逻辑与
-o 逻辑或

find cmd1 -exec cmd2 {} \;
-exec cmd {} \;固定搭配
cmd1的处理结果给cmd2处理


命令搜索
whereis 命令名
只能查系统命令
which 命令名
显示命令别名


字符串搜索
grep [options] string filename
-i 忽略大小写
-v 排除指定字符集

3.帮助
man -f cmd
相当于whatis cmd

apropos cmd
查找关于cmd的帮助信息

cmd --help

shell内部命令帮助
help cmd
用 whereis cmd 确定cmd是否为内部命令

info cmd
巨大详细的帮助

4.压缩
zip zipname srcname
-r 压缩目录
unzip zipname filename
解压不用参数,源文件保留

gzip 源文件 (源文件消失)
-r 压缩目录(目录下的文件)
-d 解压缩 gunzip

bzip2 源文件 (不能压缩目录)
-k 保留源文件
-d 解压 bunzip2

tar -cvf 打包文件名 源文件
(-c 打包
-x 解包
-v 过程
-f 指定打包文件名
)
tar -zcvf 压缩文件名 源文件
(-z .gz
-j .bz2
)
tar -zxvf 压缩包 -C 解压位置
-C 指定解压位置
tar -ztvf 压缩包
-t 查看压缩包内的文件,不解压

5.关机
shutdown [options] time
-r 重启
-h 关机 halt poweroff init 0
-c 取消上一条shutdown命令

init 6 (??尝试修复??)

logout (退出远程管理终端)

6.挂载
mount 查看已挂载目录
mount -a 自动挂载 /etc/fstab 里面的内容

mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
-t ext4 iso9660

mount -o remount,noexec /home/
重挂载/home 不能执行可执行文件
mount -o remount,exec /home/
重挂载/home

挂载光盘
mkdir /mnt/cdrom
mount -t iso9660 /dev/sr0 /mnt/cdrom/
卸载
umount 设备文件名或挂载点

挂载U盘
fdisk -l
mount -t vfat /dev/sdb1 /mnt/usb/

-t选项一般情况下可以省略

7.查看登录用户信息
w
who
last 读取的 /var/log/wtmp
lastlog /var/log/lastlog

8.shell
/etc/shells里面包含了Linux能用的shell
输入shell名即可进入指定shell

脚本执行
chmod 755 filename.sh
./filename.sh

bash filename.sh

别名
alias 查看系统已有别名
alias ls='ls --color=never'
alias rm='rm -rf'

unalias 别名

~/.bashrc 别名环境变量配置文件

快捷键
Ctrl+c 终止
Ctrl+l 清屏
Ctrl+u 删除光标前所有字符
Ctrl+a 光标跳到行首
Ctrl+e 光标跳到行末
Ctrl+z 把命令放到后台
Ctrl+r 在历史命令中搜索

历史命令
history [options] [file]
-c 清空历史命令
-w 保存历史命令到文件 ~/.bash_history
环境变量配置文件 /etc/profile
!n 执行第n条历史命令
!! 重复执行上一条命令
!字串 重复执行最后一条以字串开头的命令

输出重定向
命令 > 文件
命令 >> 文件
错误命令 2>文件
错误命令 2>>文件

命令 > 文件 2>&1
命令 >> 文件 2>&1
命令 &> 文件
命令 &>> 文件
alias fuck='ls &>/dev/null'
命令 > 文件1 2>文件2

输入重定向
wc

管道符
; 命令1 ; 命令2 分隔符,无影响
&& 命令1 && 命令2 命令1执行成功才能执行命令2
|| 命令1 || 命令2 命令1执行则2不执行,否则2执行

date;locate "l";date
ls && echo yes || echo no 正确yes错误no

命令1 | 命令2 命令1的结果给命令2
netstat -an | grep ESTABLISHED | wc -l

通配符
? * [] [-] [^]

相关内容