Bash 常用基本命令
ls cd pwd cat more less tail watch -n 2 cp rm top ps aux grep # grep 升级版 egrep # 不显示包含 0.0.0.0 或 ::: 的行 egrep -v '0.0.0.0|:::' # 网卡设置 ifconfig # 关闭网卡 ifconfig eth0 down # 开启网卡 ifconfig eth0 up # 当前的 tcp udp 联接 netstat -pantu # 以空格分列 awk # 不显示 '0.0.0.0' 或 ':::' ,且只显示第5列 netstat -pantu | egrep -v '0.0.0.0|:::' | awk '{print $5}' # 以:分列,打印第一列 awk -F: '{print $1}' # 指定字符分列 cut # 按:分列,显示第一列 cut -d ":" -f 1 # 排序 sort # 去重 uniq # 路由信息 route # 挂载目录 mount # 挂载 kali.iso 到 /media/cdrom mount -o loop kali.iso /media/cdrom # 日志 查看:/var/log/messages dmesg # 查找文件 find # 从根目录查找nmap文件 find / -name nmap # 大小写不敏感 find / -iname nmap # 当前目录及子目录下所有以ps开头的文件 find . -name "ps*" # 将查询出来的文件复制到tmp下(加bak后缀) 不操作隐藏目录下的文件 find . -name "ps*" -exec cp {} /tem/{}.bak \; # 查找包管理器里的软件位置 whereis # 查找二进制文件 whereis -b nmap # 更新查找的数据库 updatedb echo vi # 显示行号 :set nu # 修改权限 chmod # 给shell文件添加执行权限 chmod a+x shell # 修改所属用户和组 chown chown -R root:root xxx # 等待并获取用户输入 read # 从1到9的序列 seq 9 # 计算 expr a=2 b=4 c=`expr $a \* $b` echo $c ping # 只ping一次 ping 192.168.1.1 -c 1 # 计算字数 wc # 计算长度 wc -L # 查看系统信息 uname # 内核信息 uname -a # 限制当前shell内进程的资源使用 ulimit ulimit -a # 限制堆栈大小100kb ulimit -s 100 # 最大内存大小5000kb,虚拟内存大小5000kb ulimit -m 5000 -v 5000 # 运行级别任务 0关机 1单用户 2 3 4 5多用户 6重启 update-rc.d # 重启 init 6 update-rc.d ssh default # default 等同于:start运行级别2 3 4 5 stop运行级别0 1 6 # start优先级20 stop优先级20 update-rc.d ssh start 20 2 3 4 5 stop 20 0 1 6 # A 的 start优先级80 stop优先级20 # 数值越大,优先级越低 update-rc.d A defaults 80 20 update-rc.d B defaults 90 10 # 管道 | # 前面命令执行不成功,再执行后面的命令 || # 依次执行命令 & # 前面的命令报错了,后面的命令不执行了 && # 输出到文件 > # 追加到文件 >>常用操作
# 修改mac地址(先down掉eth0,改完再up) macchanger -m 00:11:11:11:11:11 eth0 # 块复制 dd if=os.iso of=/dev/sdb bs=1M # 每5秒显示一次dd的进度 watch -n 5 killall -USR1 dd # 修改密码 sudo passwd root # 磁盘分区工具 parted # luks 分区加密 cryptsetup --verbose --verify-passphrase luksFormat /dev/sdb3 # 打开 luks 加密分区 cryptsetup luksOpen /dev/sdb3 挂载名称 # 关闭 luks 加密分区 cryptsetup luksClose /dev/mapper/挂载名称 # 进入 luks 加密分区 cd /dev/mapper/挂载名称 # 格式化 mkfs ext4 /dev/mapper/挂载名称 # 指定分区卷标 e2label /dev/mapper/挂载名称 卷标 # 挂载设备到目录 mkdir -p /mnt/目录名称 mount /dev/mapper/挂载名称 /mnt/目录名称 # 卸载设备 umount /dev/mapper/挂载名称常用文件&文件夹
# bash 初始化 .bashrc # init服务 /etc/init.d/ # DNS 配置文件 /etc/resolv.conf # 日志文件 /var/log/messages # 用户 /etc/passwd # 资源限制的配置文件 /etc/security/limits