Linux 常用指令
受限的特权:sudo命令 sudo使得用户可以在自己的环境下,执行需要root权限的命令。(该信息保存在/etc/sudoers中。)
在一般用户模式下: sudo useradd -m xd (加-m可以在/home/下看到创建xd的文件夹;不加则没有)
执行cat /etc/passwd 可以查看passwd文件中是否有刚才添加的用户名,如果有,则表示添加成功
sudo passwd xd 修改xd用户的密码
sudo userdel -r xd (加-r可以删除/home/路径下的xd文件夹,否则不能 )
在root模式下:useradd xd 添加名为:xd的用户(-m同上)
passwd xd 修改xd用户的密码
userdel xd 删除名为:xd的用户(-r同上)
在一般用户模式下:su root 切换到root用户(注意:需要密码)
在root模式下:su xd 切换到xd用户(注意:xd为一般用户,无需密码)
shutdown -h now 立即关机(root用户使用)
reboot或者shutdown -r now 立即重启(root用户使用)
pwd 显示当前所在的工作目录
apt指令:(默认在root模式下,老版本是:apt-get指令)
apt update: 更新软件数据库
apt list --upgradeable: 显示可升级的软件包
apt list --installed: 显示已安装的软件包
apt upgrade: 升级软件包
apt install 软件名: 安装软件(多个软件名间加空格表批量安装)
apt remove 软件名: 卸载指定软件
apt show 软件名: 显示软件包具体信息(版本,大小,依赖,bug报告等)
清理命令:
apt clean: 清理所有软件缓存
apt autoremove: 自动清理不再使用的依赖和库文件
apt autoclean: 清理旧版本的软件缓存
安装deborphan之后直接键入deborphan命令: 清理Linux下孤立的包
du –h /var/cache/apt/archives: 查看安装包所占空间
ls 列出当前目录下的文件(不包含隐藏文件)
ls -l 列出当前目录下的文件以及详细信息(别名:ll)
ls -a 列出当前目录下的所有文件(包含隐藏文件,注意:“.”开头的是隐藏文件)
cd 跳转到某个工作目录 cd+路径
cd - 跳转到上一次的工作目录
cd .. 跳转到上一层目录(注意:cd与..之间有空格)
cd / 跳转到根目录(/目录)
cd 跳转到主目录(xuda用户是/xuda;root用户是/root)
补充:绝对路径:从根目示开始的所有的路径
相对路径:基于当前所在工作目录的位置
touch 创建一个文件 touch +文件名
rm 删除一个文件 rm+文件名(+多个文件名则表示批量删除这些文件!)
rm -f 强制删除一个文件
rm -r 删除一个目录 rm –r+目录名(注意:rm与-r之间有空格)
cp 拷贝一个文件 cp+文件名+路径 cp+文件名+新文件名
cp -r 拷贝一个目录 cp -r+目录名+路径
mv 移动一个文件(目录) mv+文件名+路径 (如果把路径名换做新的文件名,则mv的作用:更改文件名)
mkdir 创建一个目录 mkdir+目录名
mkdir -p 创建一个目录 mkdir -p /home/dir1/dir2(注意:如果dir1不存在,则会先自动创建dir1)
cat name.cpp 一次显示 name.cpp 文件的全部内容
cat > name.txt 创建name文件,同时在键盘上输入的内容就到name.txt里去,按ctrl+d结束输入(root用户使用)
kill 12345 杀死进程号为12345的进程
kill -KILL 123456 强制杀死进程号为12345的进程
kill -HUP pid 若发送SIGHUP信号,则杀死对应信号以及pid的进程
kill -9 123456 彻底杀死进程号为12345的进程
tar cvf 文件名.tar /路径 将目标路径下的所有文件或者目录打包
tar xvf 文件名.tar 将当前路径下的tar文件打开
chmod
1、功能模式:chmod 对象+操作符+权限 文件名
相关参数:
对象: u:文件的所有者
g:与文件所有者同组的用户
o:其他用户
a:所有用户
操作符 +:添加某个权限
-:取消某个权限
=:赋予某个权限
权限 r:读
w:写
x:执行
2、数组模式:chmod 761 hello.c(7代表u的权限为:可读可写可执行;6代表g的权限为:可读可写不可执行;1同理。即:其中:r:4 w:2 x:1)
uname -a: 查看当前ubunto使用的内核(版本位数)
df -k:以KB为单位查看磁盘的使用情况
ifconfig:查看网卡的ip
ifconfig eth0 192.168.0.1 配置eth0这一网卡的ip地址为:192.168.0.1
ifconfig eth0 down 暂停eth0的工作
ifconfig eth0 up 恢复eth0的工作
find:查找文件
find ./ -name'co*' 在当前目录及其子目录寻找名为:co开头的文件
find ./ -name'test' 在当前目录及其子目录寻找名为:test的文件
top:查看系统进程队CPU、内存等的占用情况(按ctrl+c(或ctrl+z)退出)
man ping:查看ping命令的使用方法(其他命令同理)
vim:打开一个文件,若没有则会新建
gedit: 编辑器
gcc: 编译器
使用:
gcc+文件名(.c)-->生成a.out(可执行文件), 再执行: ./a.out
gcc -o 1.c hello --> 拷贝可执行文件并重命名为:hello, 再执行: ./hello
cat+文件名(.c):输出编写的具体c代码
gcc -c 1.c -lm : c程序引用了math函数
1. 查看进程运行状态的指令:ps命令。
ps -A 或者 ps -aux 或者 ps -elf
ps -aux | grep name
ps --ppid 父进程号
2. 查看内存使用情况的指令:free 命令。
free -m
3. 查看进程实时运行状态、查看内存使用情况的指令均可使用 top 指令。
4. grep命令:该命令常用于分析一行的信息,若当中有所需信息,就将该行显示出来,该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工。
5. kill命令:向进程发送终止信号
1. 查看 socket、网络协议栈、网口以及路由表的信息:
netstat -nlp
ss -ltnp
2. 对于协议栈的统计信息:netstat -s 或者 ss -s
3. 网络吞吐率和PPS(每秒发送多少个分组数据包)如何查看?
sar -n DEV
sar -n EDEV
sar -n TCP
4. 连通性和延时如何查看? ping 192.168.12.20 -c 5
5. 查看路由表? route -n
grep MemTotal /proc/meminfo
grep MemFree /proc/meminfo
free -m
tar 解压文件的参数:
五个命令中必选一个:-c: 建立压缩档案、-x:解压、-t:查看内容、-r:向压缩归档文件末尾追加文件、-u:更新原压缩包中的文件
这几个参数是可选的:-z:有gzip属性的、-j:有bz2属性的、-Z:有compress属性的、-v:显示所有过程、-O:将文件解开到标准输出
cat /proc/version(cpuinfo、interrupts、loadavg)
小林:Linux 对可打开的文件描述符的数量分别作了三个方面的限制:
- 系统级:当前系统可打开的最大数量,通过 cat /proc/sys/fs/file-max 查看;
- 用户级:指定用户可打开的最大数量,通过 cat /etc/security/limits.conf 查看;
- 进程级:单个进程可打开的最大数量,通过 cat /proc/sys/fs/nr_open 查看;