一、文件操作
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 gzx@192.168.1.100:Share | 上传文件filename到gzx用户目录的Share目录下。在100 IP上必须有一个gzx用户 |
远程登录 | ssh gzx@192.168.1.100 | 100 IP必须运行sshd服务 |
网友评论