Linux常用命令


Linux常用命令
常用命令:
1、显示日期时间命令,date命令
2、查看当前登录系统的用户,who命令
3、当前登录用户的信息,whoami命令
4、命令补齐,tab命令,要求命令具有唯一性
5、别名,alias命令,格式:alias 别名=原来的命令 命令的参数
6、显示历史命令,history。 显示若干条命令,histroy【n】命令
7、ps1命令,自定义一级命令提示符。ps2命令,自定义二级命令提示符。
软件安装命令:(apt 命令软咨询软件仓库,但是不会安装本地安装包)
1、更新软件 sudo apt - get update
2、安装软件包 sudo apt - get install 软件包名称
3、卸载软件 sudo apt - get remove 软件包名称
4、搜索软件包 sudo apt - cache search 软件包名称
5、 显示软件包的依赖关系 sudo apt - cache depends 软件包名称
dpkg安装命令:(dpkg安装本地安装包,但是不会咨询软件仓库)
1、dpkg 安装命令安装.deb的软件包,不会检查软件包间的依赖关系,
sudo dpkg - i deb包名
2、find命令查找包,sudo find / - name *.deb //表示查找后缀名为deb的所有软件安装包
3、sudo dpkg -l 列出系统所有安装的软件包
4、sudo dpkg - S包名 ,列出软件包的详细信息
5、sudo dpkg - L包名 ,列出软件包中的所有文件
运行级别命令:
1、查看当前运行等级 : runlevel命令
2、切换运行等级命令:init 命令等级(0 、表示关机,1、表示单用户模式。 2~5、表示多用户多模式 。 6、表示重启机器)
关机和重启命令:
1、shutdown命令
-t:在改变到其他的运行级别之前告诉计算机多久以后关机
-r:重启计算机
-k:向每一位登陆者发送警告
-h:关机以后关闭电源,可以指定开机时间
-time:设定关机其的时间
2、halt命令
-n:关机之前不回写数据
-w:不会真正关机,只会把记录写到/var/log/wtmp、文件中
-d:不会吧记录写到上述的文件中
-i:在关机之前会关闭所有的网络接口
-p:默认选项,关机是会调动关闭电源(poweroff)动作
3、reboot命令
与halt命令相似,但是表示重启主机
4、init命令
init命令是最底层的命令,是其他命令的祖先,init 0 表示关机
用户管理命令:
1、useradd:创建新用户命令
-d 指定用户主目录,该目录已经存在,如果目录不存在则使用-m 自动创建主目录
-g 指定gid
-u指定uid
-G 指定用户所属的附加组
-l 不记录用户的登录记录
-M 不需要创建用户主目录
-p 指定用户的新密码
-r 建立一个系统账号
-s 指定shell
2、adduser:创建新用户命令(更加简单,可以进行交互按照提示输入参数)
3、passwd 参数 用户名:设置、修改口令,锁定用户账户(不加任何参数,表示默认重置用户密码)
-l 禁用该账户
-u 解开账户的禁用状态
-x 密码最大可用天数
-n 密码最小可用天数
-d 删除用户的密码
-f 强迫用户下次登录时修改口令
4、usermod 参数 用户名:修改用户账户的信息
-d 修改用户主目录 -e修改账号有效期限 -f密码过期后多少天关闭账号-g修改所属的基本组-G修改用户所属的附加组-l修改用户账号名称-L锁定用户密码-u修改用户id -U 解除密码锁定
5、userdel :删除用户命令
-r 将用户的主目录一起删除
用户组管理命令
1、groupadd 【参数】 组名 :用指定的组名来建立新的组账号
-g 指定组ID(默认唯一) -o 允许相同的组ID -r系统组账号ID小于499 -f 创建相同ID的组
2、groupmod 【参数】 组名:更改群组的属性
-g -o 同上 -n修改用户组名
3、groupdel:删除组,如果组内有成员必须先删除用户
4、gpasswd【参数】 组名:管理组,加入用户,设定组密码
-a 添加用户 -d 删除用户 -A指定组内管理员 -M指定组内成员 -r删除密码 -R 限制用户入组
5、su 【参数】 用户名 :切换用户命令(一般使用 su 切换到root用户, su - 用户名切换到指定用户,同时切换环境变量)
-l 重新登录,环境变量切换到登录的用户
-p 切换用户,不改变工作环境
-c 以指定用户身份执行命令,完成后返回原用户
-切换工作环境
6 、sudo 【参数】 命令:让普通用户暂时以超级用户的权限运行命令
-h 列出帮助信息 -V列出版本-l 列出当前用户可以执行的命令 -u已指定用户的身份执行命令 -k清除timestamp文件,下次使用sudo时需要输入密码
-b 在后台执行指定的命令 - p更改询问密码的提示语 -e不是执行命令而是修改,相当于命令sudoedit
Linux文件管理系统:
Linux中重要的文件系统
1、/etc文件 系统所需的重要的配置与管理接口 比如网络配置、DNS服务器等等
2、/dev文件 所有外部设备文件系统
3、/boot 与系统激活相关 的文件,系统启动时需要使用的程序
4、/home 登录用户的主目录就会放到此目录下
5、/lib 许多系统激活是所需要的重要的共享函数库
6、/usr/lib 应用程序的共享函数库
7、/mnt 系统的默认挂载点,也可以作为临时其他的文件挂载点
8、/proc 虚拟的文件系统,内核截取信息生成日志的地方
9、/root 超级管理员的文件库
10、/bin 普通程序存放目录 例如 cat 、cp 、 su 、等等
11、/tmp 临时文件库
12、/var 存放被系统修改过的数据
Linux中重要的文件类型
-表示用户通常访问的额普通文件
纯文本文件、数据文件等可以用cat或者vi直接查看
d表示文件目录
l表示链接文件(相当于快捷方式)
设备文件中以c开头的表示字节设备文件,以b 开头的表示块设备文件
s表示套接字文件
p表示管道文件
文件操作命令:
1、cat 参数 文件名: 显示文件中内容或者向文件中写入内容
  1. 显示文件内容
-n / -number : 由1开始对所有输出的行数标号
-b 除去空白行标号
-s 遇到两行及其以上替换成一行
-E 在每行结束处显示$
2、输入内容到文件
cat a.txt b.txt > c.txt 将a,b中的内容输出到c中,同时将c中的原来内容清空 。如果c不存在则新建c
cat a.txt b.txt >> c.txt 将a,b中的内容追加到c中末尾,如果c不存在则新建c
cat >a.txt 或者 cat ->>a.txt 表示从输入设备将内容写入c中,如果c不存在则新建c ,ctrl + d 表示输入结束
2、 more 文件名:输出文件内容进行分页显示(F或者空格显示下一页,Ctrl + B显示上一页, Q退出)
3、less 和more类似
4、head 参数 文件名
-n 显示文件前n行,默认是10行
-c 显示文件前n个字节
6 、tail 显示文件最后n行
7、echo 输出字符串到基本输出,输出的字符串以空白字符隔开,并且在最后加上换行号//很重要shell编程中经常会用
8、od:将文件以八进制、十六进制等形式输出
目录内容显示及更改命令:
1、 ls:列出文件目录中的内容
-l 列举出文件目录中详细信息,包括文件状态、权限、拥有者以及文件的大小和文件名等
-a 当前目录下所有的文件和目录,包括隐藏的文件列出.和..
-A当前目录下所欲的文件和目录,包括隐藏的文件但是不列出.和..
-t按照建立的先后时间次序列出
-R递归显示文件,目录下有文件则会被递归显示出来
2、pwd:显示当前工作目录的完整路径
3、cd :改变当前的工作目录(cd ~返回主目录 cd 返回用户主目录 cd.. 返回上一级目录)
文件创建、删除命令:
1、touch【参数】命令 :创建文档或者将文档的时间修改为指定值
- yyyymmdd修改为某年某月某日
默认,建立空文档
-r,将文档设置能参考文档或者目录的日期时间
2、rm 【参数】 文件或者文件目录
默认,删除文件而不能删除目录
-f,强制删除,不提示确认
-i ,删除时会有提示需要确认
-I ,再删除超过三个文件或者递归删除时需要确认
-r,递归删除目录及其内容
目录创建、删除命令:
1、mkdir 【参数】 目录名 :创建目录、
-p,依次创建目录,需要时创建目标的上级目录
-m,设置权限模式,4,代表读权限,2代表写权限,1代表执行权限,任意数字的和代表权限的叠加,一般需要声明三个角色的权限,目录所有者,组中其他人,系统中其他人。
如:600,表示所有者有读写权限,组中其他人没有权限,系统中其他人没有权限
2、rmdir : 删除空目录
-p 当子目录被删除后父目录为空时一并删除
-v 显示详细情况
3、cp :文件或者目录复制到另一个文件或者目录中,
-i,询问是否覆盖
-b,覆盖文件并且备份被覆盖的文件
3、mv :将文件或目录改名,或者将文件由一个目录移入另外一个目录
-f 禁止交互模式
-i 交互模式
-n 不要覆盖已经存在的文件
-u只有源文件比目标文件新或者目标文件不存在才进行移动
-v显示详细步骤
压缩备份命令:
1、tar 解、压缩命令
-c 压缩文件.tar
-x 解压缩
-z 更改解、压缩格式.zip
-v 显示过程
-f 指定名称
-u 仅转换比压缩文件新的内容
-r 新增文件置已压缩的文件尾部
2、gzip:对文件进行解压缩,但是不打包,经常和tar命令配合使用.gz
-1快压
-9最佳压缩状况
-d解压指定的压缩文件
-r递归查找并解压缩
-c将压缩结果写入标准输入,源文件不变
-v显示文件压缩比
-t测试文件完整性
-l显示详细信息
3、gunzip解压缩以gzip压缩的.gz文件
-d解压缩
-r递归解压缩
-v显示过程
4、zip压缩和归档工具.zip
5、unzip:解压zip文件(可以直接解压到指定的目录)
权限管理命令:
1、chgrp:改变文件或者目录所属的组(changegroup需要超级管理员权限)
-R递归改变所有组,将该目录文件及其所属文件所有组全部改变
--reference = 文件1,改变文件2所属群组使得其与文件1相同
chgrp --reference = tar.doc tar1.doc改变tar.doc的群组使得与tar1.doc的文件群组相同
2、chown(change owner ):改变属主和所属群组
-R 递归的将目录中所有的内容改变为新的属主
-v显示处理过程
-reference 把文件或者目录设置为参考文件的属主和群组
3、chmod:改变文件或者目录的访问权限
-R
-reference
该命令分为两种模式1)符号模式chmod 【参数】【who】operator 【permission】 files
who可选命令: a(all)所有用户 o(others)除了目录或者文件的属主或者群组以外的用户或者群组 u(user)属主 g所属的群组
operation可选命令:+ 增加权限 - 取消权限 = 设定权限
permission可选命令: r读权限 w写权限 x执行权限
2)绝对模式 chmod 【参数】 mode files
mode 代表等级由三个八进制数字组成
文件查找命令:
1、whereis:寻找二进制文件同时也会帮助查找其他文件( 一般用于查看命令的路径)
-b定位可执行文件
-m定位帮助文件
-s定位源代码文件
2、help: 查看命令的内容和使用方法(ls --help)
-s 仅输出命令格式
-d仅输出命令功能
-m像man命令一样输出命令的功能和用法
3、man:查看命令帮助手册
4、find:寻找文件或者目录的位置(~表示在当前目录中查找 、. 当前目录及其子目录下查找)
find【搜索路径】【搜索关键字】【文件或目录】
1)不知道属于哪个目录,通过文件名搜索 find/-name httpd.conf
2)根据部分文件名查找 ,使用通配字符 * 和? find/-name *http*
3)根据文件的特征查找 find/etc -size -2500c 小于2500B的文件 find /etc -name ‘f????’ 查找etc目录下所有以f开头后面有四个字符的文件 find -perm 777查找当前目录下权限为777的文件 find work -user malimei 在/work下查找所有者为malimei的文件 find /home /malimei/documents -type d -print 查找目标目录下所有的目录文件并且输出
4、locate:寻找文件及目录
还有whatis显示命令功能 which显示命令可执行路径
5、grep:使用正则表达式查找文件内容
-n 搜索内容并显示行号
统计命令:
1、wc:统计指定文件中的字节数、字数、行数,并显示结果
-c统计字节
-w 统计字数,一个字被定义为由空白、跳格、或者换行字符分割的字符串
-l 统计行数
-L 统计最长行的长度
链接命令:
1、ln:为一个文件在另外一个位置建立一个同步链接,分为硬链接和软链接 。ln 【参数】【源文件或者目录】【目标文件或目录】
硬链接,索引节点号不变,链接数目变为2,而软链接,索引节点号变化,但是链接数目不变, 软链接可以跨目录,而硬链接不能跨目录。
-s建立软链接
-i
-v
硬盘:主分区、扩展分区、逻辑分区
1、fdisk -l:查看硬盘分区信息或者对硬盘进行分区
sudo fdisk/dev/sdb 对sdb硬盘进行分区
n 将创建分区
p 创建主分区
e 创建扩展分区
n将创建分区
l将创建逻辑分区
2、mkfs:格式化
mkfs -t ext3 设备名:以ext3的格式对分区进行格式化
3、mount:挂载分区
mount -t ext3 /dev/sdb1 /mnt/sdb1 将分区sdb1 挂载到目录sdb1目录中
4、umount:卸载分区
swap交换分区:free:查看内存的使用情况
1、添加交换文件
1)创建交换文件,dd
2)指定交换文件,mkswap
3)激活swap文件,swapon
4)删除swap文件,swapoff
2、添加交换分区
1)指定交换分区, mkswap
2)激活交换分区 ,swapon
3)显示交换分区,cat /proc/swaps
4)自动加载分区启动交换分区,编辑、etc/fstab/swapfile 更改为etc/fstab/dev/sdb5
进程管理:
1、ps:查看进程
-A,列出所有进程
-w,显示加宽可以显示更多的信息
-au,显示较为详细的资讯
2、top:命令监控进程、
q,退出监控
h帮助
s设定两次更新之间的时间
space更新显示
3、kill:结束进程
4、nice:启动低优先级命令,调整进程优先级
5、renice:重新设定一个或者多个进程的优先级
6、jobs:显示后台执行的任务
任务计划:
1、at:指定时间执行命令
2、batch:任意时间执行命令
3、crontab:在指定时间执行任务计划,用户建立crontab文件指定任务计划
六个字段:1、分钟2、小时3、日期4、月份5、星期 6、要执行的命令
常用的编辑器:
1、vim、nano 、gedit
常用的编译器:
gcc
常用的调试器:
gdb
Eclipse
shell及其编程:
1、查看用户shell
1)cat /etc/shells:查看ubantu支持的shell
2)echo $SHELL:查看用户当前支持的shell
3)cat/etc/passwd:查看其他用户支持的shell,并且可以用超级用户权限修改
2、shell脚本
1)shell脚本的执行:
直接执行,需要用执行权限。
sh/bash 【参数】脚本名
-n不要执行,只检查语法问题
-v在执行脚本之前,现将脚本的内容输出到屏幕上
-x跟踪模式,显示所执行的每一条命令,并在行首显示一个“+”
source脚本名
3、shell脚本变量,包括系统变量和环境变量以及自定义变量
4、shell脚本语法:
1)变量名:使用变量无须先声明,变量的命名有字母数字下划线组成,其中不能以数字开头。
  • $变量名:变量的引用
  • echo $变量名:输出变量
  • 变量的赋值和替换
    1. 变量名= 值,等号两边不能留空格
    2. 变量名重置,重新赋值
    3. unset,清空某一个变量的值
    4. 变量可以有条件的替换,替换条件放在一对{}中
      • ${variable:-value}:变量未定义或者值为空时,返回value值
      • ${variable:=value}:变量未定义或者为空时,返回value值的同时赋值给variable
      • ${varible:+value}:变量已经赋值其值才用value替换否则不进行任何替换
    5. bash只支持一维数组,没有限定数组大小,从0开始标号
      • declare 【参数】variable
      • -a 数组
        -i 整型
        -x 环境变量
        -r 只读
        -f 函数
      • 数组赋值:连续赋值,用空格隔开
      • 数组读取 : 读取单个元素,echo ${array_name[index]} 。 读取所有元素echo {array [@]} 、 echo ${array[*]}
      • 数组长度获取:${#array[@]} 、${#array[*]}
      • 获取数组单个元素的长度:${#array[n]}
    6. read:输入命令,以空格作为分隔符
    7. echo:输出命令 ,-n不换行输出,-e启用反义字符转换
    8. 运算符
    9. 特殊字符:反斜线(\):反义字符,把后面的字符当做普通字符处理 双引号(“”):双引号中的字符除了$、反斜线、反引号之后当做普通字符处理。 单引号(' '):单引号中的字符作为普通字符出现。 反引号(`):反引号中的内容解释为命令行首先执行,结果取代整个反引号部分
    10. #:注释符号
2) test命令:判断命令和[条件表达式]
  • 整数运算符:-eq(=) -ne (!=) -gt(>) -lt(<) -ge(>= ) -le(<=)
  • 字符串运算符 : -z:判断是否为空 -n:判断是否为非空 =:判断是否相等 !=:判断是否不相等
  • 文件运算符:-e :文件名是否存在 -f:文件名是否存在,且为文件。 -d:是否存在且为目录 -b是否存在且为block device -c :是否存在且为character device -S:是否存在且为socket -P:是否存在且为pipe -L:是否存在且为连接文件 -r:是否存在且具有可读权限 -w -x -u -g -k -s -nt -ot -ef
  • 逻辑运算符:-a :与 -o:或 !:非
  • if语句
  • case语句
  • while语句
  • until语句
  • for语句
  • 循环控制语句:break语句、 continue语句
服务器配置:
1、ifconfig:查看和更改网络接口地址和参数
2、route:查看主机路由器
3、hostname:查看系统和修改主机名
4、netstat:查看网络连接状态,显示网络连接、、路由器、网络接口、
以上命令在系统重启后会失效,想要永久保留必须修改配置文件。
/etc/network/interfaces /etc/hostname /etc/vesolv.conf
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值