最近Linux用的比较多,经常去查一些指令,特此记录,供自己日后使用时查询并补充。
1、基础命令
1.1、文件和目录
命令 |
操作 |
cd ~ |
进入当前登录用户的home目录 |
cd …/… |
返回上两级目录 |
cd - |
返回上次所在目录 |
cd ~ |
进入当前登录用户的home目录 |
cp file1 file2 |
将file1复制为file2(操作完源文件还在) |
cp -a dir1 dir2 |
复制一个文件夹 |
cp -a /data/www . |
复制/data/www文件夹到当前工作目录(.表示当前目录) |
ls -lrt |
按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序) |
mkdir dir1 |
同时创建两个目录 |
mkdir -p /tmp/dir1/dir2 |
创建一个目录树 |
mv dir1 dir2 |
移动/重命名一个目录 |
rm -rf dir1 |
删除 ‘dir1’ 目录及其子目录内容(r表示递归,f表示强制删除) |
1.2、查看文件内容
命令 |
操作 |
cat file |
从头查看文件file的内容 |
head -2 file |
查看文件file的前两行 |
more file |
查看长文件file的内容 |
tac file |
从最后一行反向查看一个文件的内容(输出是从最后一行开始的) |
tail -3 file |
查看一个文件的最后三行 |
vi(vim) file |
打开并浏览文件 |
1.3、文本内容处理
命令 |
操作 |
grep str /tmp/test |
在文件‘/tmp/test’中查找“str” |
grep ^str /tmp/test |
在文件 ‘/tmp/test’ 中查找以 “str” 开始的行 |
grep [0-9] /tmp/test |
查找 ‘/tmp/test’ 文件中所有包含数字的行 |
grep str -r /tmp/* |
在目录 ‘/tmp’ 及其子目录中查找 “str” |
diff file1 file2 |
找出两个文件的不同处 |
sdiff file1 file2 |
以对比的方式显示两个文件的不同 |
vi(vim) file |
i 进入操作模式Esc 退出编辑文本模式;:w保存当前修改;:q不保存退出;:wq保存当前修改并退出 |
1.4、查询操作
命令 |
操作 |
find / -name file1 |
从 ‘/’ 开始进入根文件系统查找文件和目录 |
find / -user user1 |
查找属于用户 ‘user1’ 的文件和目录 |
find /home/user1 -name *.bin |
在目录 ‘/ home/user1’ 中查找以 ‘.bin’ 结尾的文件 |
find /usr/bin -type f -atime +100 |
查找在过去100天内未被使用过的执行文件 |
find /usr/bin -type f -mtime -10 |
查找在10天内被创建或者修改过的文件 |
1.5、压缩、解压
命令 |
操作 |
bzip2 file1 |
压缩 file1 |
bunzip2 file1.bz2 |
解压 file1.bz2 |
gzip file1 |
压缩 file1 |
gzip -9 file1 |
最大程度压缩 file1 |
gunzip file1.gz |
解压 file1.gz |
tar -cvf archive.tar file1 |
把file1打包成 archive.tar(-c: 建立压缩档案;-v: 显示所有过程;-f: 使用档案名字,是必须的,是最后一个参数) |
tar -cvf archive.tar file1 dir1 |
把 file1,dir1 打包成 archive.tar |
tar -tf archive.tar |
显示一个包中的内容 |
tar -xvf archive.tar |
解压一个包 |
tar -xvf archive.tar -C /tmp |
把压缩包释放到 /tmp目录下 |
zip file1.zip file1 |
创建一个zip格式的压缩包 |
zip -r file1.zip file1 dir1 |
把文件和目录压缩成一个zip格式的压缩包 |
unzip file1.zip |
解压一个zip格式的压缩包到当前目录 |
unzip test.zip -d /tmp/ |
解压一个zip格式的压缩包到 /tmp 目录 |
1.6、yum安装器
命令 |
操作 |
yum -y install [package] |
下载并安装一个rpm包 |
yum localinstall [package.rpm] |
安装一个rpm包,使用你自己的软件仓库解决所有依赖关系 |
yum -y update |
更新当前系统中安装的所有rpm包 |
yum update [package] |
更新一个rpm包 |
yum remove [package] |
删除一个rpm包 |
yum list |
列出当前系统中安装的所有包 |
yum search [package] |
在rpm仓库中搜寻软件包 |
yum clean [package] |
清除缓存目录(/var/cache/yum)下的软件包 |
yum clean headers |
删除所有头文件 |
yum clean all |
删除所有缓存的包和头文件 |
yum install -y net-tools |
bash: ifconfig: 未找到命令 |
yum install -y wget |
bash: wget: 未找到命令 |
1.7、网络
命令 |
操作 |
ifconfig ens33 |
显示一个以太网卡的配置 |
ifconfig ens33 192.168.1.1 netmask 255.255.255.0 |
配置网卡的IP地址 |
ifdown ens33 |
禁用 ‘ens33’ 网络设备 |
ifup ens33 |
启用 ‘ens33’ 网络设备 |
ip addr show |
显示网卡的IP地址 |
1.8、系统相关
命令 |
操作 |
su - |
切换到root权限(与su有区别) |
shutdown -h now |
关机 |
shutdown -r now |
重启 |
reboot |
重启 |
poweroff |
关机 |
top |
罗列使用CPU资源最多的linux任务 (输入q退出) |
uname -r |
内核版本 |
cat /etc/redhat-release |
centos版本 |
pstree |
以树状图显示程序 |
man ping |
查看参考手册(例如ping 命令) |
df -h |
显示磁盘的使用情况 |
vi /etc/hostname |
修改主机名称 |
vi /etc/sysconfig/network-scripts/ifcfg-ens33 |
//修改或增加配置 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.xxx.xxx NETMASK=255.255.255.0 GATEWAY=192.168.111.2 DNS1=114.114.114.114 DNS2=8.8.8.8 |
1.9、用户、权限相关
命令 |
操作 |
groupadd developer |
创建用户组developer |
useradd -g developer developer |
创建用户developer 并加入developer 组 |
passwd developer |
设置用户developer的密码 |
chmod -R 775 test |
修改目录test权限为775(r4,w2,e1) |
chown -R nginx:nginx static |
将文件夹static拥有者修改成nginx |
1.9、防火墙、端口相关
命令 |
操作 |
firewall-cmd --get-active-zones |
查看zone名称 |
firewall-cmd --zone=public --add-port=6379/tcp --permanent |
开启6379端口 |
firewall-cmd --reload |
重启防火墙 |
firewall-cmd --query-port=6379/tcp |
检查端口是否开启 |