常用linux命令

常用linux命令 [^1]

执行命令与查看帮助

命令名称 [命令参数] [命令对象]

man --help		# 查看帮助,等同于 man -h
echo Linux		# 输出Linux字符
echo $HOSTNAME		# 输出主机名
man date		# date --help  
date		# date [选项] [+指定的格式]
date "+%Z--%A--%p--%j"		# CST--Friday--AM--263
date -s "20190920 9:30:00"		# 设置时间
wget -p -r -O path -c -t times -b 下载地址		# p所有资源,r递归,O指定目录,c断点续传,t次数,b后台下载
elinks [参数] 网址		# 纯文本界面浏览器
elinks www.linux.org

系统状态检测命令

ifconfig [网络设备] [参数]
uname -a

内核名称、发行版、版本、节点名、硬件名称、硬件平台、处理器类型、操作系统

cat /etc/redhat-release		# 查看详细版本信息
uptime		# 查看系统负载情况 (小于1为正常)
watch -n 1 uptime		# 每秒刷新
free -m/-g		# 查看内存使用情况
who [参数]		# 查看当前登陆用户
last [参数]		# 查看所有的登陆记录
history		# 历史命令,默认1000条,保存在/home/.bash_history
vim /etc/profile/HISTSIZE		# 修改保存条数
cat ~/.bash_history
history -c		# 清空记录
sosreport		# 收集系统配置信息并诊断

工作目录切换命令

pwd [选项]
pwd -P		# 显示非快捷链接地址
cd ~		# 家目录
cd ..		# 上级目录
cd -		# 上次目录
cd ~username		# 其他用户家目录
ls -lah		# 详细信息、隐藏文件、kmg

文本文件编辑

cat [-n行号,-b行号不带空行,-A显示空格、tab] [文件]		# 适用于查看纯文本文件
more -5 filename		# 显示5行
more -d filename		# 显示提示和报错
head -n 5 filename		# 只显示5行
head -n-5 filename		# 正常输出,不显示最后5行
tail -n 20 filename		# 显示最后20行
od -t a		# 查看特殊格式文件,a为默认字符,c为ASCII,odxf
tr [a-z][A-Z] < tr.txt >TR.txt		# 小写转大写
wc -lwc /etc/passwd
cut -d: -f6 /etc/passwd
grep ^root /etc/passwd | cut -d: -f7
diff -b -B 文件a 文件b		# 忽略空格、空行引起的差异
diff --brief A.txt B.txt		# 仅显示相同或不同

文件目录管理命令

三种时间:
mtime # 内容修改时间(不包括权限的)
ctime # 更改权限与属性的时间
atime # 读取文件的时间

touch test		# 创建空白文档
touch -d "2 days ago" test		# -a/-m/ -d==-a-m /-t具体时间
mkdir -m 755		# -p 多层目录; -v 显示创建过程
cd !$		# 上条目录 =!!
mkdir dir
touch file file1
cp file dir		# /dir/file
cp file file1		# 文件内容为file的,文件名不变
cp file file3		# 新建file3并将file内容写入file3

在这里插入图片描述

mv aaa bbb		# rename
rm -rf test		# 直接删除 -i 删前询问
rmdir		# 删除空目录,目录有文件会报错
dd if=/dev/cdrom of=*.iso		# 光驱设备拷贝成镜像文件
dd if=/dev/sda of=sda_image count=1 bs=512K		# 拷贝MBR. (conv=ucase/lcase大小写转换)

用户与用户组

useradd -d /home/linux -u 8888 -s /sbin/nologin username
id username
passwd
passwd othername

在这里插入图片描述

userdel -d username		# 删除用户及其家目录
userdel -rf username		#强同删除用户、家目录、相关文件
usermod -c say_something username		# 备注

在这里插入图片描述

groupadd linux		# 创建用户组

打包压缩文件命令

tar -czvf name.tar.gz /etc/passwd		# 用gzip打包passwd
tar -xzvf name.tar.gz -C /root/name		# 解压到/root/name

在这里插入图片描述

文件查询搜索命令

grep /sbin/nologin /etc/passwd		# 在passwd中找出禁止登陆用户

在这里插入图片描述

find [查找路径] 查找条件 操作
find /etc -name "host*" -print
find / -user username -exec cp -arf {} /root/path/\		# 找出用户username的文件,cp到/root/path

管道符、重定向与环境变量

管道符

命令a|命令b|命令c

echo "Content" | mail -s "Subject" username		# 给username发邮件
mail		# 查看邮件
echo "passwd" | passwd --stdin root		# 给root用户重置密码
输入输出重定向
mail -s "Readme" root@HOSTNAME << over
>hello
>world
>over

在这里插入图片描述
在这里插入图片描述

命令行通配符
通配符含义
*匹配0个或多个字符
匹配任意单个字符
[0-9]匹配范围内的数字
[abc]匹配给出的任意字符

bash支持的特殊字符

字符作用
\反斜杠转义后面单个字符
‘’单引号转义所有字符
“”双引号变量依然生效
··反引号执行命令语句
PRICE=5
echo "Price is $PRICE"		# 输出Price is 5
echo "Price is \$$PRICE"		# 输出Price is $5,要将第一个$转义
echo 'Price is \$$PRICE'		# 原样输出,变量失效
echo `uname -a`		# 执行语句输出
PATH变量
alias cp="cp -i"		# 设置别名,快捷操作
ualias cp		# 取消别名

ls执行过程:

Created with Raphaël 2.2.0 如果是绝对路径/相对路径输入的命令,执行/bin/ls 检查是否为alias别名 由bash判断其是“内部命令”or“外部命令” 通过$PATH变量中定义的路径进行命令查找
echo $PATH		# 查看变量
PATH=$PATH:/root/bin		# 增加新值
type ls		# 查看是内部命令还是外部命令
env		

重要环境变量

变量名称作用
HOME用户家目录
SHELL当前的shell是哪个程序
HISTSIZE历史命令记录条数
MAIL邮件信箱文件
LANG语系数据
RANDOM随机数字
PS1bash提示符
HISTFILESIZEhistory命令存储数量
PATH在路径中的目录查找执行文件
EDITOR默认文本编辑器
#!/bin/bash
##设置变量“WORKDIR”,让每个用户执行`cd $WORKDIR`都登陆到/home/workdir目录中
mkdir /home/workdir
WORKDIR=/home/workdir
cd $WORKDIR
pwd
export WORKDIR		# 局部变量提升为全局变量
su -username		# 切换到其他用户,执行`cd $WORKDIR`

[^1]本篇文章是我学习刘遄老师的《linux就该这么学v2.0》的学习笔记,纯为自己学习总结及后续复习之用,如有读者读到此文,并对您学习linux有所帮助,实乃杜某之幸,确有不妥之处,也望您海涵。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值