在最近学LINUX的过程中,记不住命令让我感到很是力不从心,相信也有很多朋友和我一样,当然除了那些记忆超强的伙伴们哈。那么今天,我就将我学习过程中遇到的诸多命令作以总结,希望可以帮到您哦!
用户管理命令
添加用户
useradd newname 添加一个新的用户 ;
其他附加命令 :
-u :指定用户的uid 0 : root 用户
uid Linux上 唯一确定用户的标识 尽量不要用。
**-g** :执行新用户的主组(初始组)
默认就是本身。test
**-G** : 设置附加组 如果指定多个附加组可以用逗号隔开 。
-d :设置家目录 (一般不用)
**-c** :备注
-s :指定命令解释器
**-m**: 自动传创建家目录
一般情况下,使用如下语句创建新用户:
useradd -c “” -G -m 用户名
切换用户
user用户切换到root用户:sudo su 然后输入root的密码就进入了root用户权限
root 用户切换到普通用户: su username 切换用户
删除用户
userdel username 删除用户
userdel 删除用户时,首先确保该用户没有登录。userdel 默认仅删除用户,不会删除家目录及家目录中的文件,若想删除用户的同时移除家目录, 那么使用 userdel -r username。
修改用户密码
passwd username 修改密码
终端输入之后,便可根据提示修改密码。
查看用户信息
/etc/passwd 存储用户基本信息
/etc/group 存储用户组的信息
/etc/shadow 存储用户的密码
修改用户信息
修改用户说明
修改用户状态
文件管理命令
查看文件
语句:ls 文件名 查看当前目录下的文件
-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 若目录下有文件,则以下之文件亦皆依序列出
创建文件
创建普通文件
touch + 文件路径/文件名 创建普通文件
文件路径:可以是相对路径也可以是绝对路径
创建目录文件
mkdir + 目录路径/目录名 创建目录文件
删除文件
删除普通文件
rm + 文件路径/文件名
删除空目录
rmdir + 目录路径/目录名
rm -r +目录路径/ 目录名 -r 是rm的参数
删除非空目录
rm -r +目录路径/ 目录名
注意:rm -rf * 禁用 rm -rf /*
文件复制与重命名
复制粘贴使用cp
语法: cp [options] source… directory
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
移动文件或者重命名使用mv
语法:mv [options] source… directory
• -i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
• -f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示;
修改文件权限
1. 文字设定法
chmod + u 表属主 g 同组人 o 其他人 a 所有人 + 增加权限 -去掉权限 文件路径/文件名
例如:chmod u+w main.c
2. 数字设定法
chomd xxx 文件名
用户能够对其进行怎样的操作
a. r 读权限 值: 4
b. w 写权限 值: 2
c. x 执行权限 值: 1
d. - 无权限 值: 0
根据对应权限所对应的数字值,来设定需要设定的权限
例如: chomd 764 main.c
修改文件属组
sudo chgrp 新的属组名 文件名
例如: sudo chgrp stu main.c
修改文件属主
sudo chown 新的属主名 文件名
例如: sudo chown stu a
文件查看命令
文本查看 cat
查看文件内容
cat 文件名
合并文件
cat 文件1 文件2 > 新文件名
文件中写入数据
cat > 文件名
ctrl+d 为结束输入
分屏显示文件内容 more
more 文件名
当一个文件的内容超过一个屏幕能显示的行数,使用 more 可以分屏显示文件内容。
less
文本内容查看器,查看文件内容,但是文件内容不会显示呢在界面上
显示文件前N 行内容
head -n 文件名
显示文件后N 行内容
tail- n 文件名
数据统计
统计文件中单词个数(-w)、字符个数(-c)、行数(-l)
wc -l 文件名32222222222222
磁盘管理命令
路径切换
cd 相对路径或者绝对路径
cd .. 退回到上级目录
cd - :跳到之前所在目录
cd ~ : 跳到home目录
查看当前路径
pwd 显示当前路径
内存 free
用法:
free -h //以更友好的方式显示,会以K,M,G为单位来显示
free -m //以M为单位打印结果
查看内存使用情况
- pidstat -r
- vmstat
查看磁盘信息
df -h
查看硬盘磁盘IO
- iostat -xdk 2 3
指的是每秒取样两次,共取样3次。 - pidstat -d
备份压缩命令
文件打包
tar -cvf 压缩包名 文件1 文件2 文件3
文件解包
tar xvf 压缩包名
文件压缩
gzip 文件包名
文件解压
gzip -d 文件包名
一步打包压缩
tar cvzf 压缩包名 文件名 文件名
压缩包一步解压
tar zxf 压缩包名
进程管理命令
ps
显示当前终端的进程,默认显示与当前终端有关的进程信息
- 打印指定用户信息:ps -u 用户名
- 打印指定进程信息:ps -ef | grep 进程名
- 显示所有进程信息:ps -ef
pstreee
以树状图显示进程间的关系;。ps命令可以显示当前正在运行的那些进程的信息,但是对于它们之间的关系却显示得不够清晰。在Linux系统中,系统调用fork可以创建子进程,通过子shell也可以创建子进程,Linux系统中进程之间的关系天生就是一棵树,树的根就是进程PID为1的init进程。
jobs
显示当前终端任务
sleep
sleep n 睡眠n秒
此时默认在前台执行,终端会等待当前进程结束
&
sleep n &
后台运行程序,前台不受影响
fg bg
fg %任务号 将后台运行的或挂起的进程挪到前台执行
bg %任务号 将挂起的进程唤醒到后台执行
kill
kill 进程名 结束或挂起一个进程
kill -9 强制结束进程
kill -stop 挂起进程
总结还有些许不完善,各位朋友多多担待,博主会尽快完善哒!