Linux 实用命令

一、文件操作

1.1 创建和删除文件

功能 命令 解释
创建普通文件 touch filename
创建目录 mkdir -p dirname 指定-p选项可以创建多级目录
删除空目录 rmdir dirname 只能删除空目录
删除文件和目录 rm -rf name 将会递归删除文件,不会放入回收站

1.2 查看文本文件内容

功能 命令 解释
查看整个文件 cat -n filename 指定-n添加行号
查看整个文件 less -N filename 指定-N添加行号,一点一点查看
查看部分文件 head -n 20 filename 查看前面20行,默认前10行
查看部分文件 tail -n 20 filename 查看尾部20行,默认后10行

1.3 查看文件状态

功能 命令 解释
查看目录状态 ls -dl dirname 指定-d查看目录信息,而不是里面的文件
查看文件属性 file filename 可以查看文件编码
查看文件所有信息 stat filename NULL

1.4 编辑文件

功能 命令 解释
使用vim编辑器 vi filename 使用命令行编辑
使用gedit编辑器 gedit filename 使用GUI界面编辑
使用sed编辑器 sed 's/gzx/Tom/g' /etc/passwd 将每行的gzx全部换成Tom
使用awk编辑器 awk -F : '{print $1}' /etc/passwd 指定分隔符,输出用户名

1.5 文件处理

功能 命令 解释
文件行排序 sort -t ':' -k 7 /etc/passwd 使用:分割,第7行排序
文件行查找 grep -n '^gzx' /etc/passwd 使用正则表达式查找,且标出行号

1.6 查找文件

功能 命令 解释
利用文件名定位文件 locate hello 从整个目录树查找含有hello的文件或目录
查找特定文件 find ~ -type f -name hello.txt 从用户的HOME目录下查找文件名为hello.txt的文件

1.7 文件打包和压缩

功能 命令 解释
打包并压缩成gzip格式 tar cvfz all.tgz * 将当前目录下的所有文件压缩到all.tgz
解压缩gzip格式 tar -C test -zxvf all.tgz 将压缩包解压到test目录下,第二个-不能省
打包并压缩成bzip2格式 tar cvfj all_bzip2.tbz * 压缩比大,速度慢
解压缩bzip2格式 tar -C test -jxvf all_bzip2.tbz 同上

二、设备操作

功能 命令 解释
查看设备的分区表 sudo fdisk -l /dev/sda 使用超级权限,列出分区信息
给硬盘分区 sudo fdisk /dev/sda 一开始在内存里操作,直到输入w命令
给分区安装文件系统 sudo mkfs -t ext4 /dev/sda1 给第一块硬盘的第一个分区安装ext4文件系统
挂载文件系统 sudo mount -t ext4 /dev/sda1 /home 挂载设备/dev/sda1到/home,同时指定设备的文件系统为ext4
挂载文件系统 sudo mount -t iso9660 -o loop image.iso /mnt/iso_image 挂载镜像文件image.iso1到/mnt/iso_image,挂载文件要加-o选项
卸载文件系统 sudo umount /dev/sda1[/home] 卸载文件系统,可以指定设备名或挂载点
拷贝设备 sudo dd if=/dev/sda of=bootsect.bin bs=512 count=1 拷贝sda的第一个扇区,其中bs表示block size,每次拷贝的大小,而count表示拷贝多少次
列出设备空间使用信息 df
列出系统挂载点 mount NULL

三、用户管理

3.1 增删用户

功能 命令 解释
创建用户 sudo useradd -m Jession 创建Jession,同时创建HOME目录,还必须用passwd设置密码。没有sudo权限
设置用户密码 sudo passwd Jession 普通用户只能设置自己的密码,超级用户能设置他人的密码
删除用户 sudo userdel -r Jession 同时删除其HOME目录
切换到超级用户 su 当前目录不变,输入root的密码
切换到超级用户 su - 运行root的Login Shell,并切换到\root
使用超级用户权限 sudo 命令 当前用户必须是sudoer。输入的是当前用户的密码,创建的文件是root,更加安全

3.2 修改文件属性

功能 命令 解释
修改权限 chmod -x note.txt 全部去掉执行权限,有u(用户),g(组),o(其他),a(所有)四种
修改权限 chmod 664 note.txt 八进制的形式
修改属主 sudo chmod Jessin note.txt 更改属主
修改属主 sudo chmod Jessin: note.txt 更改属主并修改为Jessin属组
修改属主和属组 sudo chmod Jessin:Jessin note.txt
修改属组 sudo chgrp Jessin note.txt 可以用chown替换
查看创建文件的默认权限 umask
修改创建的文件的属性 umask 022 去掉属组和其他用户的写权限

四、软件安装

4.1 从库安装

功能 命令 解释
更新软件库 sudo apt-get update
升级已安装的软件 sudo apt-get upgrade 一般要先运行上一个命令
安装软件 sudo apt-get install pkt_name 包名不包括版本号,包含包文件,由库源完成映射
删除软件 sudo apt-get remove pkt_name 不会删除配置文件
删除软件 sudo apt-get purge pkt_name 会删除配置文件
智能删除软件 sudo apt-get autoremove 移除安装某软件包时需要的依赖包
清除本地仓库的所有包文件 sudo apt-get clean 主要是/var/cache/apt/archives/ 和/var/cache/apt/archives/partial/
智能清除本地仓库的包文件 sudo apt-get autoclean
低级安装 sudo dpkg -i deb包 NULL

4.2 手动安装

功能 命令 解释
生成Makefile ./configure 可以指定安装的目录--prefix
编译 make
将命令安装到特定目录 sudo make install NULL

五、进程管理

功能 命令 解释
列举当前系统的所有进程 ps aux BSD风格
列举当前系统的所有进程 ps -ef UNIX风格,字段与上面存在不同
动态刷新进程列表 top
查看所有任务 jobs
将进程放置到后台运行 命令 &
将进程放置到后台运行 bg %1 1表示第一个任务号
将进程放置到前台运行 fg %1 1表示第一个任务号
列出系统支持的信号 kill -l
给进程发送信号 kill -signum[-signame] pid 必须存在亲属关系或者是超级用户。默认发送SIGTERM
查看进程树 pstree NULL

六、网络管理

功能 命令 解释
查看IP ifconfig
检查网络是否连通 ping IP 发送ICMP echo回显请求
检查网络路由拓扑 traceroute 发送ICMP echo回显请求,TTL从一开始不断加加
查看网络连接状态 netstat 可以看TCP状态
查看本地路由表 netstat -r
查看arp缓存 arp 可以添加或删除arp表项
查看打开的端口、运行的服务 sudo lsof -i :22,3306 冒号不能省,后面跟逗号列表。部分服务需要超级权限
非交互式下载 wget -c URL 指定-c表示继续下载
使用ftp服务 ftp ftp_server 通常有一个匿名用户anonymous,无密码
上传或下载远程文件 scp filename [email protected]:Share 上传文件filename到gzx用户目录的Share目录下。在100 IP上必须有一个gzx用户
远程登录 ssh [email protected] 100 IP必须运行sshd服务

你可能感兴趣的:(Linux 实用命令)