常用Linux基本命令
一、Linux常用命令
Linux命令格式
命令格式 :命令 -参数 操作对象(注意中间有空格) 例 : ls -la /etc/default
说明:当有多个参数时,可以写在一起。
绝对路径 :是从根开始一级一级地进入各个子目录,最后指定该命令或文件。
相对路径 :是从当前目录进入某目录,最后指定该命令或文件。两个特殊的目录 . 和 .. ,分别指示当前目录和当前目录的父目录。
Linux命令学习参考网站:http://man.linuxde.net/
1 # 命令 选项 参数 三部分组成
2 ls -a /temp
3 ls --all
4 # 以下三个一样
5 ls -l -a
6 ls -la
7 ls -al
命令说明
1 # 一下或者两下tab建
2 # 一下的话会直接找到你要用的命令
3 # 两下,可能会用到的全列出来
4 # ifconfig 在7的版本没有,需要装软件
5 yum insatll net-tools -y
6 yum insatll net-tools
7 # yum install bash-completion -y 补齐选项
8 ls - 两下tab建,所有的选项都会提示出来
命令快捷键
1 Ctrl + a #光标跳转至正在输入的命令行的首部
2 Ctrl + e #光标跳转至正在输入的命令行的尾部
3 Ctrl + c #终止前台运行的程序 ##################
4 Ctrl + d #在shell中,ctrl-d表示推出当前shell。
5 Ctrl + z #将任务暂停,挂至后台
6 Ctrl + l #清屏,和clear命令等效。 ##############
7 Ctrl + k #删除从光标到行末的所有字符
8 Ctrl + u #删除从光标到行首的所有字符
9 Ctrl + r #搜索历史命令, 利用关键字,Tab建选中,只能找到最近的一条
10 Ctrl + w #按单词或空格进行向前删除
11 Ctrl + 左右建 #按单词或空格进行向前向后跳
12 #在命令行前加面加 "#" 则该命令不会被执行
历史命令history
1 # history查看历史命令
2 # !数字 快速执行数字那一行
3 # !yum 快速执行最近一条yum命令
4 # history -d 70 把历史记录的第70行删除
5 # history -c 清空所有记录(连到人家服务器,操作完了,执行一下)
6 # history -w 可以把 历史记录写到用户家路径的.bash_history文件中
export环境变量
环境变量主要是告诉程序在哪里去找资源,我们需要预设置对 应的命令的位置作为环境变量。如果输入命令,计算机就会去 预设置的位置找到对应的命令。
如果命令能被找到,则执行该命令;如果命令找不到,则提示command not found。
PATH=$PATH:/sbin 意思是把/sbin加入到环境变量PATH中
export PATH:使环境变量生效,命令等同于:export PATH=$PATH:/sbin
变更用户:su
● 指令名称:su
● 功能描述:变更用户身份
● 执行权限:root
● 语法:su [-mp] [-] [用户帐号]
○ -m或者-p:变更身份时不会变更环境变量
○ -:变更身份时同时变更所有环境变量
● 范例(重要):
○ su - root:切换到root用户同时切换到root的环境变量
○ su root:切换到root用户,使用原来用户的环境变量
修改用户密码:passwd
● 指令名称:passwd
● 功能描述:变更用户密码
● 执行权限:all
● 语法:passwd [user]
● 范例:
○ # passwd:将当前用户密码,输入123456即可
○ # passwd zhangsan 设置zhangsan用户的密码
注意事项:密码在输入过程不会有任何显示,其实已经输入了,完成输入回车即可。如果密码为123456这类简单密码,会提示密码过于简单,请重新输入,再次输入123456即可
变更用户:last
● 指令名称:last
● 功能描述:显示用户最近登录信息
● 执行权限:all user
● 语法:last(选项)(参数)
○ -a:把从何处登入系统的主机名称或ip地址,显示在最后一行;
○ -d:将IP地址转换成主机名称;
○ -n:<显示列数>或-<显示列数>:设置列出名单的显示列数;
● 范例:last -10 显示10行最近的登录信息
内容进度
Linux的文件系统
● 基本命令:ls、cd、pwd、man、clear
● 目录管理:mkdir、rmdir
● 文件操作:touch、rm、 cp 、mv
● 文件查看:cat、more、less、head、tail
● 文件权限:chmod、chgrp、chown
● 文件搜索:grep、find、wc
● 文件编辑:vi、vim
文件操作命令:ls -l ll
用途:显示当前目录下的文件和文件夹,类似Dos中的Dir,list 列表。
文件管理指令:ls
● 指令名称:ls
● 功能描述:显示目录文件
● 指令英文原义:list
● 执行权限:All User
● 语法:ls [-alt] [文件或目录]
○ -a:显示所有文件,包括隐藏文件
○ -l:使用长格式显示
○ -t:按照时间排序显示
○ -d:列出指定的目录
文件管理指令:cd
● 指令名称:cd
● 功能描述:切换目录指令英文原义:change directory
● 语法:cd [参数] [目录]
● 范例:
○ $cd .. :回到上级目录
○ $cd /:切换到根目录
○ $cd ../usr:切换到上一层目录的usr目录
○ $cd -:切换到上一次工作目录
文件管理指令:pwd
● 指令名称:pwd
● 指令英文原义:present work directory
● 语法:pwd
● 功能描述:显示目前所在的工作目录
● 范例:
○ $pwd:/usr/X11R6/bin 显示当前工作目录为 usr/X11R6/bin
帮助命令:man
● 指令名称:man
● 功能描述:获得帮助信息
● 指令英文原义:manual
● 语法:man [任何关键字]
● 范例:
○ $ man ls:查看ls指令的帮助信息,按q退出
● 其他:
○ $ manpath:显示完成的帮助手册页路径
○ $ man ls | col –b > ls.txt:将man手册页转换成普通文本文件
文件管理指令:mkdir
● 指令名称:mkdir
● 功能描述:建立目录
● 执行权限:All User
● 语法:mkdir 选项[-p] [目录名]
○ -p:依次创建目录
● 范例:
○ $ mkdir int
○ $ mkdir -p int1/mail/
文件管理指令:rmdir
● 指令名称:rmdir
● 功能描述:删除空目录
● 执行权限:All User
● 语法:rmdir 选项 [目录名]-p 依次删除目录
● 范例:
○ $ rmdir int
○ $ rmdir -p int1/mail/
文件管理指令:touch
● 指令名称:touch
● 功能描述:生成空文件和修改文件存取时间
● 执行权限:All User
● 语法:touch 选项 [文件名] 以MMDDhhmm的形式给出要修改的时间
● 范例:
○ $ touch abc.txt:创建一个名为abc.txt的文件
○ $ touch -t 201505011000 abc:修改abc文件的存取时间为2015年5月1日10:00
文件管理指令:cp
● 指令名称:cp
● 功能描述:复制文件
● 指令英文原义:copy
● 执行权限:All User
● 语法:cp -pr [源文件或目录] [目的文件或目录]
○ -p:保留原文件的日期属性
○ -r:递归复制所有文件
● 范例:
○ $ cp file1 /usr/tmp:将文件名为 file1 的文件复制到/usr/tmp目录下。
○ $ cp file1 ..:将文件名为 file1 的文件其上层目录下。
○ $ cp file1 file2:将文件名为 f1 的文件复制一份为文件名为 f2 的文件。
○ $ cp file1 file2 dir:将文件file1,file2复制到目录dir
○ $ cp *.txt dir:将所有的txt文件复制到某个目录下
○ $ cp -r dir dir2:将dir1下的所有目录包括子目录陆续地复制到dir2
文件管理指令:rm
● 指令名称:rm
● 功能描述:删除文件
● 指令英文原义:remove
● 语法:rm -irf [文件或目录]
○ -i:互动模式,删除前再做一次确认
○ -r:递归删除目录
○ -f:强制删除
● 范例:
○ $ rm -i:file删除文件前询问是否删除
○ $ rm -rf:dir强制删除整个目录
文件管理指令:mv
● 指令名称:mv
● 功能描述:移动和重命名文件
● 指令英文原义:move
● 语法:mv -if [源文件或目录] [目的文件或目录]
○ -i:覆盖前提示
○ -f:强制移动
● 范例:
○ $ mv file1 ../dir2:将文件file1移动到其上层下的dir2目录
○ $ mv file1 file2:将文件file1更名为file2
文件管理指令:cat
● 指令名称:cat
● 功能描述:显示文件内容
● 执行权限:All User
● 语法:cat [文件名]
● 范例:
○ $ cat /etc/sysconfig/network-scripts/ifcfg-eth0:显示ifcfg-eth0中的所有内容
○ $ cat tempa tempb > tempc:把tempa和tempb的内容合并到tempc中并显示
文件管理指令:more
● 指令名称:more
● 功能描述:分页显示文件内容
● 执行权限:All User
● 语法:more [文件名]
○ f或(空格):显示下一页
○ Enter:显示下一行
○ q或Q:退出more
●范例:
○ $ more /etc/services
○ $ ls /etc | more
文件管理指令:less
● 指令名称:less
● 功能描述:按页显示文件内容,可用方向键上下翻页
● 执行权限:All User
● 语法:less [文件名]
● 范例:
○ $ less /etc/services
more和less的区别
● more命令功能:让画面在显示满一页时暂停,此时可按空格健继续显示下一个画面,或按Q键停止显示。
● less命令功能:less命令的用法与more命令类似,也可以用来浏览超过一页的文件。所不同的是less命令除了可以按空格键向下显示文件外,还可以利用上下键来卷动文件。当要结束浏览时,只要 在less命令的提示符“: ”下按Q键即可。
● 它们能上相近,只是从浏览习惯和显示方式上有所不同
文件管理指令:head
● 指令名称:head
● 功能描述:查看文件的前几行
● 指令所在路径:/usr/bin/head
● 执行权限:All User
● 语法:head -num [文件名]
○ -num:显示文件的前num行
● 范例:
○ $ head -20 /etc/services:显示/etc/services文件前20行
文件管理指令:tail
● 指令名称:tail
● 功能描述:查看文件的后几行
● 指令所在路径:/usr/bin/tail
● 语法:tail -num [文件名]
○ -num:显示文件的后num行
● 范例:
○ $ tail -30 /etc/services:显示services的最后30行内容
○ $ tail –f /usr/RunLog:显示文件最新追加的内容,用以检查日志文件
○ $ head -100 abc.txt|tail -51:显示文件的50到100行
● Linux用户、用户组
● Linux文件权限RWX的含义
1 rwx r-x r-x
2 属主(文件所有者) 属组权限 其他人权限
3 权限详解
4 r:read写权限
5 w: write写权限
6 x: 可执行
7 修改权限
8 7=4(r)+2(w)+1(x)
9 chmod 777 文件夹/文件
文件管理指令:chmod
● 指令名称:chmod
● 指令英文原义:change file or directory’s mode
● 指令所在路径:/bin/chmod
● 执行权限:All User
● 语法:chmod -R [mode=4,2,1 or {a,u,g,o}{+,-,=}{r,w,x,s,t}] [文件或目录]
● 功能描述:改变文件或目录的权限
● 范例:
○ $ chmod a+r file1:所有用户对file1有读的权利
○ $ chmod og-x file1:删除group与other用户对file1文件的执行权利
○ $ chmod u=rwx file1:将file1的文件所有者权限设为可读、可写、可执行
○ $ chmod 777 file2:指定file2为所有用户可读、可写、可执行
○ $ chmod -R 644:dir/将dir目录下的所有文件权限设置为644
文件管理指令: chgrp
● 指令名称:chgrp
● 功能描述:改变文件或目录的所属组
● 指令英文原义:change file or directory’s group
● 指令所在路径:/bin/chgrp
● 语法:chgrp -R [群组] [文件或目录]
○ -R:递归处理,将指令目录下的所有文件及子目录一并处理;
● 范例:
○ $ chgrp root file:改文件file的所属组为root
○ $ chgrp –R zhangxin /usr/qatnt:将/usr/qatnt及其子目录下的所有文件的用户组改为zhangxin
文件管理指令:chown
● 指令名称:chown
● 功能描述:改变文件或目录的所有者
● 指令英文原义:change file or directory’s owner
● 指令所在路径:/bin/chown
● 语法:chown -R [用户] [群组]] [文件或目录]
● 范例:
○ $ chown dugang file:改文件file的所有者为dugang
○ $ chown -R dugang dir/:将目录dir所有文件的所有者改为dugang
○ $ chown -R dugang:other dir/:将目录dir的所有者改为dugang ,属组改为other
文件管理指令: find
● 指令名称:find
● 功能描述:搜索文件或目录
● 指令英文原义:find指令所在路径:/usr/bin/find
● 语法:find [搜索路径] [选项] [搜寻关键字] [文件或目录]
○ -name:按照文件名查找文件。
○ -perm:按照文件权限来查找文件。
○ -user:按照文件属主来查找文件。
○ -group:按照文件所属的组来查找文件。
○ -mtime -n +n:按照文件的更改时间来查找文件。
○ -nogroup:查找无有效所属组的文件。
○ -nouser:查找无有效所有者的文件。
○ -type:查找某一类型的文件。
○ -size n[c]:查找文件长度为n块的文件。
○ -print:将文件或者目录名称列出到标准输出。
按名称查找:-name:
范例:
● $ find ~ -name "*.txt" -print:在$HOME查找文件名符合*.txt的文件
● $ find /etc -name "host*":-print在/etc目录下查找以host开头的文件
●$ find /etc -name c?? -print:查找所有以c开头后面有两个字符的文件
按权限查找:-perm:
范例:
● $ find -perm 755 -print:在当前目录下查找文件权限位为755的文件
按属主查找:-user/-nouser:
范例:
● $ find ~ -user dugang -print:在$HOME目录中查找文件所有者为dugang的文件。
● $ find /etc -user root -print:在/etc目录下查找文件所有者为root的文件。
● $ find /home -nouser -print:在/home目录下查找没有所有者的文件。
按用户组查找: -group/-nogroup:
范例:
● $ find /home -group other -print:在/home目录下查找属于other用户组的文件。
● $ find / -nogroup -print:从根目录/下查找没有有效所属用户组的所有文件。
按更改时间查找:-mtime [+/-]n:
范例:
●$ find / -mtime -5 -print:在根目录下查找更改时间在5天以内的文件。
●$ find /var/adm -mtime +3 -print:在/var/adm目录下查找更改时间在3日以前的文件。
按文件类型查找:
范例:
●$ find /etc -type d -print:在/etc目录下查找所有的目录。
●$ find ! -type d -print:在当前目录下查找除目录以外的所有类型的文件。
●$ find /etc -type l -print:在/etc目录下查找所有的符号链接文件。
按文件大小查找:-size [+/-]n[c]:
范例:
●$ find -size +1000000c -print:在当前目录下查找文件长度大于1 M字节的文件。
●$ find /usr -size 100c -print:在/usr目录下查找文件长度恰好为1 0 0字节的文件。
●$ find /bin -size +10 -print:在/bin目录下查找长度超过10块的文件(一块等于512字节)。
文件管理命令:grep
● 指令名称:grep
● 功能描述:在文件中搜寻匹配的行并输出
● 指令所在路径:/bin/grep
● 语法:grep [要找的字串] [要寻找字串的源文件]
● 范例:
○ $ grep root /etc/passwd
○ $ls -l /etc | grep inetd.conf
文件管理命令:wc
● 指令名称:wc
● 功能描述:显示文件的行数、单词数、字符数。
● 指令所在路径:/usr/bin/wc
● 执行权限:All User
● 语法:wc [选项] [文件]
● 范例:
○ $ wc /etc/passwd:显示/etc/passwd的行数、单词数和字符数。
○ $ wc -l /etc/passwd:显示/etc/passwd的行数。
vi的使用
● 进入vi:
○ vi 回车:直接进入vi编辑器
○ vi 文件名 回车:编辑已存在或新建文件
● 查看而不编辑:view 文件名
● vi 新文件:创建一个新文件
vi的三种模式:使用esc/i/a进行模式切换
● 输入模式
● 编辑模式
● 文件操作
插入文本:
删除:
保存:
退出:
搜索字符串:
内容进度
系统管理命令
wall:向所有用户发送消息
write:向特定用户发送消息,按一次回车发送一次
mesg:控制write是否可以存储控制台内容
sync:同步磁盘内容,强制把内存数据写回磁盘以免数据丢失
free:察看内存使用情况uptime系统运行时间
top:显示系统进程(动态刷新),退出输入q
磁盘管理命令
● df:
○ 分区或磁盘剩余的空间大小
○ IDE硬盘hda、hdb、hdc、hdd
○ SCSI硬盘sda、sdb、sdc、sdd…….
● du:磁盘或目录使用的磁盘大小
● fsck:检查文件系统
系统进程
● ps:查看系统进程
● kill-9 进程ID或进程名:结束系统进程
操作系统的内容:软件和硬件的管家
硬件的管理
CPU、内存、磁盘的管理
硬件资源的查看:
硬件资源的编辑:如网络:/etc/sysconfig/network-scripts/
软件的管理
文件和文件夹的管理
四大基本操作:ls cd pwd(显示当前工作目录) clear(清除屏幕)cd 切换路径
文件夹的管理
文件的管理
文本类型的文件管理(txt,html,c,php,py,log)
文件的查看操作(主要是查日志)
文件的编辑操作(vi)
命令模式下快捷操作文件
二进制文件的管理(exe)
压缩文件
压缩操作和解压缩操作:tar -zxvf unzip/zip
可执行文件: ./xxx.sh
软件的安装、卸载等操作
yum install xx -y
查找已被安装的程序:rpm -qa
用户和权限
1 useradd(一个用户只能属于一个主组,属于多个附加组)
2 groupadd sa 新增一个组
3 groupadd sa1 新增一个组
4 groupadd students 新增一个组
5 useradd -u 5001 -g students -G sa,sa1 -c "2020 new student" -s /bin/bash lqz1
6 创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户无法登陆系统
7 useradd mysql -M -s /sbin/nologin
8 usermod
9 usermod -c "2019 new student" -md /bgx -s /bin/sh -l change_bgx bgx
10 usermod -L change_bgx #锁定后会无法登陆系统
11 usermod -U change_bgx
12 userdel
13 userdel egon # 删除用户,不删家目录
14 userdel -r egon1 # 删除用户,删家目录
15 passwd root
16 用户组增删改
17 groupadd no_gid 新增组
18 groupmod -g 1111 student 改组id号
19 groupmod student -n new_student 改组名字
20 groupdel new_student 删除组(组下没有人,把人删除,再删)