linux常用命令行


before preview —— tldr

tldr 是比 man 更易于阅读和使用的帮助文档

前言

本文记录了部分Linux常用的命令,即可以作为新手学习入门使用,又可以当做手册查阅

ctl + c 向系统发送中断信号

Linux命令大全(手册)


                                   老菜鸟的学习之路

实用操作

安装/卸载.deb程序

dpkg -i 安装报名字.deb
dpkg -r 软件名
# 可以通过dpkg -l 查看安装了哪些程序,通过dpkg -l | grep “baidunetdisk” 过滤

Linux目录结构

通过如下命令可查看Linux系统目录结构,不同版本的Linux可能略有不同,但大体上差不多。

cd /
ls -lah

下面的命令和上面的效果相同

cd / ; ls -lah

Alt

Linux中所有的内容都是以文件的形式存放的

.代表当前目录
..代表上一层目录
- >带箭头的是链接文件,相当于Windows下的快捷方式
快捷方式->链接到这里
/bin存放常用命令(即二进制可执行程序)
/boot系统内核及启动有关的文件
/dev存放设备文件,比如新加了块硬盘等在这里可以看到
/etc存放系统配置文件
/home所有普通用户的主目录
/lib存放库文件
lost+found非正常关机后在此目录下会有文件
/mnt临时挂载点
/opt
/proc虚拟文件系统的目录,以进程为单位存储内存的映射
/rootroot用户的主目录
/tmp存放各种临时文件,是所有用户均可访问的地点
/usrUnix Shared r
/var存放系统运行中常改变的文件,如系统日志

常用命令

线上查询及帮助命令

[...]#
manman mkdir
info
help
man  	[...]# man mkdir / manual
info  	[...]# info mkdir
help    [...]$ help mkdir

[…]# 代表当前用户身份为root
[…]$ 代表当前用户为普通用户

文件及目录操作

ls

ls               # 显示指定工作目录下的文件及属性信息
ll 同 ls -l
ls -alh
ls /root
常用参数含义YY
-a显示所有文件及目录 (包括以“.”开头的隐藏文件)all
-l使用长格式列出文件及目录的详细信息list
-hhuman,以人类友好的方式显式human

cd

change directory

cd /      #切换至根目录
cd .      #切换到当前目录
cd ..     #切换至上级目录
cd -      #两个目录反复横跳
cd ~      #切换至当前用户目录

cp

copy,复制文件或目录.-r参数用于递归操作,复制目录时若忘记加则会直接报错,而-f参数则用于当目标文件已存在时会直接覆盖不再询问,这两个参数尤为常用。
语法格式: cp [参数] 源文件 目录

cp -rf 源文件 目录
cp -t  目录 源文件

猜测
-f force
-t transfer
-r recursive

find

mkdir

make directory

mkdir new_directory      #创建目录
mkdir -p /home/aaa/bbb   #若父目录不存在
mkdir -pv /home/aaa/bbb  #-v显示创建过程

mv

move移动文件或目录
语法格式: mv [参数] 源文件 目录

mv 目录或文件 目标目录
mv anaconda-ks.cfg ks.cfg  #相当于对文件重命名

pwd

print working directory

rename

可以批量重命名文件,而mv只能重命名一个文件

常用参数含义
?可代替单个字符
*可代替多个字符

rm

remove,删除文件或目录,rm -rf /*命令则会清空系统中所有的文件,甚至无法恢复回来

rm -rf /*  #递归并且强制删除根目录下的所有文件
常用参数含义
-r递归删除
-f强制删除(不二次询问)
-i删除前会询问用户是否操作
-v显示指令的详细执行过程

rmdir

remove empty directory
仅能删除空目录
语法格式: rmdir [参数] 目录

rmdir ./a           #删除空目录a
rmdir a/b/c a/b a   #删除空目录c b a
rmdir -p a/b/c      #同上
常用参数含义
-p删除指定目录及其各个上级文件夹
-v输出每个被处理目录的详情和诊断信息

touch

touch hea.h #若文件不存在则创建空文件,若文件存在则修改时间戳

tree

以树状图形式打印出当前目录内容

basename

似乎没啥用

basename a/b/c #输出c

dirname

跟basename组成路径

dirname a/b/c #输出a/b

chattr

change attribute 更改文件属性

lsattr

list attribute 列出文件属性

file

识别文件类型
file 文件名

md5sum

sha256sum

查看文件及内容处理命令

cat

在终端设备上显示文件内容
-n 显示行号

tac

反向列示文件内容

more

分页显示文本文件内容,文件内容少用cat多用more
回车:下一行
空格:下一页
front:下一页
back:上一页

less

同more但是更强大,less更像将终端变为“记事本”

echo

输出

echo "Hello World!"            #在终端上显示Hello World!
echo -e "ab\ncd"               #-e支持转义字符
echo -e "覆盖" > file
echo -e "追加至下一行" >> file

grep

据说是强大的文本搜索工具

grep来自于英文词组“global search regular expression and print out the line”的缩写,意思是用于全面搜索的正则表达式,并将结果输出。人们通常会将grep命令与正则表达式搭配使用,参数作为搜索过程中的补充或对输出结果的筛选,命令模式十分灵活

ls | grep a #显示所有名称中带a的文件或目录

head

显示前几行

head file.txt       
head -n10 file.txt  #显示前10行

tail

查看文件尾部内容
-n50 显示文件尾部50行

tail -f nohup.out   #持续显示文件最新追加的内容

ln

link创建连接,相当于创建快捷方式

ln -s 源文件或目录 软连接名
ln -rf linkname            #删除链接
ln -rf linkname/           #删除链接下的子目录

history

显示历史命令
history -c #清除记录

vi/vim

在这里插入图片描述


vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
在这里插入图片描述
- 命令模式

用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

i 切换到输入模式,以输入字符。
x 删除当前光标所在处的字符。
: 切换到底线命令模式,以在最底一行输入命令。
若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。

命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

- 输入模式

在命令模式下按下i就进入了输入模式。
在输入模式中,可以使用以下按键:
字符按键以及Shift组合,输入字符
ENTER,回车键,换行
BACK SPACE,退格键,删除光标前一个字符
DEL,删除键,删除光标后一个字符
方向键,在文本中移动光标
HOME/END,移动光标到行首/行尾
Page Up/Page Down,上/下翻页
Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
ESC,退出输入模式,切换到命令模式

- 底线命令模式

在命令模式下按下:(英文冒号)就进入了底线命令模式。
底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。
在底线命令模式中,基本的命令有(已经省略了冒号):
q 退出程序
w 保存文件
按ESC键可随时退出底线命令模式。

:q   退出
:q!  强制退出不保存
:wq 退出并保存

文件压缩及解压

tar

tar本身不具有压缩功能。它是通过调用压缩功能实现的
注tar是打包,不是压缩

# 注tar是打包,不是压缩
tar -xvf filename.tar          # 解包
tar -cvf filename.tar DirName  # 打包

tar -zxvf name.tar.gz -C /tmp          # 解包
tar -zcvf name.tar.gz file1 file2 ...  # 打包并压缩

gzip

将文件压缩为*.gz
只能压缩文件不能压缩目录,不保留原来的文件,同时多个文件会产生多个压缩包

gunzip

zip

unzip

zip -r test.zip file1[file2 ...]   # 压缩
unzip test.zip                     # 解压到当前目录
unzip -d /tmp test.zip             # 解压到指定目录
unzip -l test.zip                  # 只是看看zip压缩包的内容,不进行解压缩

信息显示 / 进程管理

uname

显示操作系统相关信息的命令

hostname

hostnamectl

hostnamectl set-hostname xxx  # 修改hostname
cat /etc/hosts

dmesg

显示开机信息用于诊断系统故障

uptime

显示系统运行时间及负载

du

disk usage 查看文件或目录的大小
du --max-depth=n

常用参数含义
-h用合适的方式显示大小
-s只显示总和
-a不仅查看子目录的大小,还要包括文件

df

dist free 查看磁盘剩余空间
Show information about the file system on which each FILE resides, or all file systems by default.

lsblk

mount

挂载、

  1. 挂在新的根分区
    mount /dev/dev /mnt
    
  2. 挂载必要的文件系统proc, sys, dev, run
    mount --bind /dev   /mnt/dev
    mount --bind /sys   /mnt/sys
    mount --bind /proc  /mnt/proc
    mount --bind /run   /mnt/run
    
  3. 进入chroot环境
    chroot /mnt
    
  4. 执行操作

    在chroot环境中,可以执行安装、修复等操作
  5. 退出chroot环境
    exit
    umount /mnt/{proc,sys,dev,run}
    umount /mnt
    

umount

卸载分区

fdisk

fdisk -l; 列出指定的外围设备的分区表状况

fdisk命令的英文全称是“Partition table manipulator for Linux”,即作为磁盘的分区工具。进行硬盘分区从实质上说就是对硬盘的一种格式化, 用一个形象的比喻,分区就好比在一张白纸上画一个大方框,而格式化好比在方框里打上格子

top

实时显示系统资源使用情况

free

显示内存占用
eg: free -h Show human-readable output

date

Display the current time in the given FORMAT, or set the system date.

cal

查看日历等时间信息

用户管理

useradd
passwd
su
sudo
groupadd

useradd

useradd

passwd

常用格式:passwd [参数] 用户名

[root@linuxcool ~]# passwd
Changing password for user root.
New password: 输入密码
Retype new password: 再次输入密码
passwd: all authentication tokens updated successfully.
常用参数
-d删除已有密码
-l锁定用户的密码值,不允许修改
-u解锁用户的密码值,允许修改
-e下次登陆强制修改密码
-k用户在期满后能仍能使用
-S查询密码状态

系统权限及用户授权相关命令

chown
chmod

文件rwx权限对root用户无效,即root用户拥有最高权限。
Alt
Alt
除了用上面的rwx代表权限外还可以用八进制
在这里插入图片描述
上图中的权限为 755

chown

改变文件或目录的用户和用户组
chown [参数] 所属主:所属组 文件

chown root:root file_or_dir

chmod

改变文件或目录权限

chmod 777 file_or_dir
chmod 755 file_or_dir
chmod 750 file_or_dir

查看系统用户登陆信息

whoami

打印当前登录用户

who am i

内容会更详细

查看cpu

查看服务其的cpu个数
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
查看服务器每个cpu的核数
cat /proc/cpuinfo | grep "cpu cores" | uniq

基础网络操作命令

telnet
ssh
scp
wget
route
ifconfig
修改IP:  ifconfig <eth0> <ip> netmask <mask>
ifup
ifdown
netstat
ss

进程管理相关命令

nohup

nohup, no hang up防止终端断开连接而导致程序执行终止

nohup linux.sh &            # 以后端模式运行指定脚本程序
nohup uptime &> system.txt  # 以后端模式执行指定命令,并将输出结果写入到文件

ps

显示进程状态

ps aux
ps aux | grep 要找查的内容

kill

kill -9 PID

服务

systemctl

管理系统服务

常用命令
start 启动服务
stop 停止服务
restart 重启服务
enable 使某服务开机自启
disable 关闭某服务开机自启
status 查看服务状态
list -units --type=service 列举所有已启动服务

crontab

管理定时计划任务

参数
-e 编辑任务
-l 列出任务
-r 删除任务
-u 指定用户名字
–help 显示帮助信息

Tips

在Windows下我们叫文件夹,在Linux下叫目录
文件夹 <=> 目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值