linux中 , 有哪些命令是比较好用的呢?1.列出文件清单命令:ls
ls命令能够列出当前目录下的所有内容 。ls 命令的执行方式为:
# ls [-选项] [文件名或者目录名]
进入到Linux命令行中后 , 我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得 。
在Linux中,ls命令是最常使用的命令之一 , 因为在命令行下要随时查看目录内容 。如果不加任何选项的话,ls命令仅列出当前目录下的文件和目录名,例如,想要查看/etc目录下的内容 , 可以使用下列命令:
# ls /etc
如果想要列出当前目录下所有文件 , 则可以使用下列命令:
# ls -a
2、cat命令
功能:在标准输出上显示文件 。
语法:cat [-vTEuAte] 文件
例子: cat example.txt
cat -A exam2.txt
cat file1 file2file2
3、more命令
功能:在终端屏幕按屏显示文本文件 。
语法: more [-pcdls] 文件
例子: more example.c
more -dc example.c
more -c -10 example.c
4、less命令
less命令的功能几乎和more命令一样,也是用来按页显示文件,不同之处在于less命令在显示文件时允许用户既
可以向前又可以向后翻阅文件 。
5、head命令
功能:显示指定文件的前若干行 。缺省设置为显示10行
语法:head [-n] 文件
例子: head example.c
head -3 example.c
6、tail命令
功能:显示指定文件的末尾若干行 。缺省设置为显示10行
语法:tail [/ - num ] [参数] 文件
+num 从第num行以后开始显示 。- num 从距文件尾num行处开始显示 。
例子: tail example.c
tail -4 example.c
7、grep、fgrep和egrep命令
功能:
这组命令以指定模式搜索文件,并通知用户在什么文件中搜索到与指定的模式匹配的字符串,并打印出所有包含该字符串的文本行,在该文本行的最前面是该行所在的文件名 。grep命令一次只能搜索一个指定的模式;egrep命令检索扩展的正则表达式(包括表达式组和可选项);fgrep命令检索固定字符串 , 它不识别正则表达式,是快速搜索命令 。
语法:
grep [-EFbcihlnvxef] [查找模式] [文件名1,文件名2,……]
egrep [选项] [查找模式] [文件名1 , 文件名2 , ……]
fgrep [选项] [查找模式] [文件名1 , 文件名2,……]
例子: grep "text file" example
grep data *
grep goto *.c
linux常用命令linux常用命令如下:
1、查看内核版本:uname -a 。
2、控制台-》图形界面:init 5或者startx 。
3、图形界面-》控制台: init3或者直接注销 。
4、如何查看ip地址:ifconfig 。
5、配置ip:ifconfig eth0 ip地址 。
6、重启:reboot 或者 shutdown -r now 。
7、普通用户切换到系统用户:su 。
8、注销用户指令:logout 。
9、从子机退出:ctrl alt 。
10、全屏:ctrl alt enter。
基本思想:
Linux的基本思想有两点:第一,一切都是文件;第二,每个文件都有确定的用途 。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件 。
Linux系统与设置命令 在前面的两个章节中,我们主要介绍了Linux基本知识和虚拟机的安装,从当前章节开始,我们一起学习下Linux的基本命令,在当前章节 , 我们先简单的学习下一些系统的基本命令,慢慢的由浅入深,在后面的章节中我们将学习其他的命令比如文件操作、备份压缩等
命令我们可以理解成在Windows中我们常常为了查看ip输入的ipconfig,在Linux中也有很多的命令 , 比如操作目录、文件、网络、磁盘等等命令
使用者权限:管理员用户
参数说明:
添加用户czbk(传智播客的首拼)执行
我们使用useradd命令创建了一个用户czbk
useradd 可用来建立用户帐号 。帐号建好之后,再用 passwd 设定帐号的密码 。
执行如下
由上图我们发现,我们在使用useradd新增用户的时候 , 出现了权限不足,也就是说我们使用用户itcast没有创建用户的权限 。
我们通过管理员账号root进行创建,首先我们从控制台中切换到root
在 密码的地方输入我们的root密码【root】即可进入到root用户下 。
我们在root下继续创建czbk用户
以下是useradd常用选项
用户管理的一项重要内容是用户口令的管理 。用户账号刚创建时没有口令,但是被系统锁定 , 无法使用,必须为其指定口令后才可以使用
使用者权限:管理员用户
指定和修改用户口令的Shell命令是 passwd。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令 。命令的格式为:
可使用的选项:
设置当前用户的口令
此处我们设置密码和itcast账号密码一致,为【Itheima888】
usermod 命令通过修改系统帐户文件来修改用户账户信息
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等 。
使用者权限:管理员用户
修改已有用户的信息使用 usermod 命令,其格式如下:
下面命令将用户czbk用户名修改成czbk2019
以下是usermod常用选项
假如我们其中一个用户的账号不再使用,可以从系统中删除 。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录 。
使用者权限:管理员用户
删除一个已有的用户账号使用 userdel 命令,其格式如下:
-f:强制删除用户 , 即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件
此命令删除用户czbk2019
成功删除用户czbk2019
以下是userdel常用选项
引子:
为了方便用户管理, 提出了 组 的概念, 如下图所示
比如新建账户【张三】,那么它默认对应的组就是张三
一个用户可以有一个或者多个组
假如说(如上图),我们在企业级开发过程中,我们有多个组,其中一个开发组对应三个账户,张三、李四、王五、如果就像上面提到的,一个用户默认对应一个组,那么三个账户张三、李四、王五就有了三个不同的组,如果大家都操做一个文件,在进行权限分配的时候,就要对不同的三个组进行授权 , 显然这样是不合理的,因为太过繁琐 。
所以,才有了组(新建组)的概念 , 我们把张三、李四、王五统一放到【开发组】 , 在对文件授权的时候,我们只对【开发组】进行授权由此,这样的话【张三、李四、王五】都有相等的权利操作了 。
新增一个用户组(组名可见名知意,符合规范即可) , 然后将用户添加到组中
使用者权限:管理员用户
使用的选项有:
新增用户组czbk-it
上面的命令向系统中增加了一个新组czbk-it,新组的组标识号是在当前已有的最大组标识号的基础上加1
以下是groupadd常用选项
使用者权限:管理员用户
常用的选项有:
上面的命令将组czbk-it的组名修改为czbk-it-2019 。
以下是groupmod常用选项
在查询用户所属的用户组前,我们先增加一个用户ituser-groups
要查询一个用户属于哪个用户组,使用groups命令 , 其格式如下
查询用户ituser-groups属于某个用户组,执行groups命令
由此可见,ituser-groups用户属于用户组ituser-groups(用户组默认与用户名一样)
使用者权限:管理员用户
要删除一个已有的用户组,使用groupdel命令,其格式如下
删除czbk-it-2019用户组
删除成功
以下是groupdel常用选项
1、创建一个新的组,并添加组ID(需要切换到root用户)
执行效果如下
2、创建3个用户(需要切换到root用户)
3、将上面三个用户添加到组itbj2020group
我们通过passwd命令将三个用户添加到组
什么是gpasswd:
gpasswd 是 Linux 下工作组文件 /etc/group 和 /etc/gshadow 管理工具 , 用于将一个用户添加到组或者从组中删除 。
语法
将上面的三个用户使用gpasswd添加到组(需要切换到root用户)
执行如下
查看用户组下所有用户(所有用户)
执行效果如下(或者直接打开/etc/group文件都可以)
由上图可知:三个用户全部都加入到了itbj2020group组 。
date 可以用来显示或设定系统的日期与时间
使用者权限:所有用户
语法如下:
参数
-d字符串:显示字符串所指的日期与时间 。字符串前后必须加上双引号;
-s字符串:根据字符串来设置日期与时间 。字符串前后必须加上双引号;
-u:显示GMT;
--help:在线帮助;
--version:显示版本信息
1、设置时间
用 -s选项可以设置系统时间,如下:
2、显示时间
协调世界时,又称世界统一时间、世界标准时间、国际协调时间 。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC 。。
(2)GMT
即 格林尼治平太阳时间,是指格林尼治所在地的标准时间,也是表示地球自转速率的一种形式
外文名: Universal Time
其他外文名 G.M.T.(Greenwich Mean Time)
(3)CST
北京时间 (中国国家标准时间)北京时间是中国采用国际时区东八时区的区时作为标准时间。北京时间并不是北京(东经116.4°)的地方时间,而是东经120°的地方时间,故东经120度地方时比北京的地方时早约14分半钟 。因为北京处于国际时区划分中的东八区 , 同格林尼治时间(世界时)整整相差8小时(即北京时间=世界时 8小时) , 故命名为“北京时间” 。东八区包括的范围从东经112.5°到东经127.5°,以东经120°为中心线,东西各延伸7.5° , 总宽度为15°的区域 。而中国幅员辽阔,东西相跨5个时区(即东五区、东六区、东七区、东八区、东九区5个时区)授时台必须建在地理中心地带,从而也就产生了长短波授 。“北京时间”与“北京当地时间”是两个概念, “北京时间”的发播不在北京 , 而在陕西蒲城(处于东七区)
(4)东八区
东八区( UTC / GMT08:00)是比 世界协调时间 (UTC)/ 格林尼治时间 (GMT)快8小时的时区,理论上的位置是位于 东经 112.5度至127.5度之间,是东盟标准的其中一个候选时区 。当格林尼治标准时间为0:00时,东八区的标准时间为08:00
pre class="md-fences md-end-block ty-contain-cm modeLoaded" spellcheck="false" lang="" cid="n486" mdtype="fences" style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-indent: 0px; text-transform: none; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-size: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); border: 1px solid rgb(231, 234, 237); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; padding: 8px 4px 6px; margin-bottom: 15px; margin-top: 15px; width: inherit; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); position: relative !important; background-position: inherit; background-repeat: inherit;"总结:
上面提到了很多知识:即UTC/GMT/CST/东八区
总结一下就是,北京时间(中国国家标准时间CST)采用东八区区时,即:
协调世界时(UTC) 8 /格林尼治时间(GMT) 8
也就是说 8后的时间才是北京时间/pre
logname命令用于显示用户名称 。
执行logname指令,它会显示目前用户的名称
语法为如下:
参数 :
显示登录账号的信息
su命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码 。
使用权限:所有使用者 。
语法如下:
变更帐号为 root 并在执行 ls 指令后退出返回原使用者
切换到root
这样的话 , 我们就进入到了root用户下 。
id命令用于显示用户的ID,以及所属群组的ID 。
id会显示用户以及所属群组的实际与有效ID 。若两个ID相同,则仅显示实际ID 。若仅指定用户名称,则显示目前用户的ID 。
使用者权限:所有用户
语法
参数说明:
显示当前用户信息
执行效果如下
sudo:控制用户对系统命令的使用权限,root允许的操作 。
通过sudo可以提高普通用户的操作权限
使用者权限:普通用户
语法如下:
sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command
参数说明 :
sudo命令使用
指定root用户执行指令
修改网卡配置文件
比如,在下面的例子中,我们使用普通用户修改网卡的配置文件,在进行保存的时候,提示我们【无法打开并写入文件】,那么此时,我们可以通过sudo命令来提升自己的写入权限
执行:
执行效果如下(保存)
然后点击回车
执行效果如下(键入itcast密码)
执行保存
top命令用于实时显示 process 的动态 。
使用权限:所有使用者 。
显示进程信息
执行效果如下
显示完整命令,与top命令不同的就是command属性像是进行了命令补全
执行效果如下
执行效果如下
Linux ps命令用于显示当前进程 (process) 的状态信息
使用者权限:所有用户
语法如下:
显示进程信息
显示指定用户信息
显示所有进程信息
Linux kill命令用于删除执行中的程序或工作(可强制中断)
使用者权限:所有用户
语法如下:
参数说明 :
杀死一个进程
强制杀死进程
彻底杀死进程
杀死指定用户所有进程
1.方法一 过滤出itcast用户进程
2.方法二,直接杀死
shutdown命令可以用来进行关闭系统,并且在关机以前传送讯息给所有使用者正在执行的程序 , shutdown 也可以用来重开机
使用者权限:管理员用户
语法如下:
参数说明 :
立即关机
指定1分钟后关机,1分钟关机并显示警告信息
指定1分钟后重启,并发出警告信息
reboot命令用于用来重新启动计算机
使用者权限:管理员、普通(需要验证)用户
语法如下:
参数 :
开始重新启动
重启效果如下
who命令用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者 ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等
使用者权限:所有使用者都可使用 。
语法如下:
参数说明 :
显示当前登录系统的用户
显示明细(标题)信息
由上图可知,截止到现在只有itcast在线 。
引子:
timedatectl是用于控制系统时间和日期 。可以用来查询和更改系统时钟于设定,同时可以设定和修改时区信息 。
在实际开发过程中,系统时间的显示会和实际出现不同步;我们一般为了校正服务器时间、时区的时候会使用timedatectl命令/pre
使用者权限:所有使用者都可使用,设置时间需要管理员,下面会标注 。
几个常见的概念,进行总结如下:
显示系统的当前时间和日期,使用命令行中的timedatectl命令
执行效果如下
上图显示中国时区
Linux常用基本命令大全介绍 学习Linux系统 , 命令是最基础的一部分,有着很重要的地位,所以入门必须掌握好常用命令 。下面由我为大家整理了Linux系统常用的基本命令入门篇,希望对大家有帮助!
Linux系统常用的基本命令入门篇一、基础命令
1.Linu x的进 入与退出系统
进入Linux系统:
必须要输入用户的账号,在系统安装过程中可以创建以下两种帐号:
1.root--超级用户帐号(系统管理员),使用这个帐号可以在系统中做任何事情 。
2.普通用户--这个帐号供普通用户使用,可以进行有限的操作 。
一般的Linux使用者均为普通用户,而系统管理员一般使用超级用户帐号完成一些系统管理的工作 。如果只需要完成一些由普通帐号就能完成的任务,建议不要使用超级用户帐号,以免无意中破坏系统 。影响系统的正常运行 。
用户登录分两步:第一步,输入用户的登录名,系统根据该登录名识别用户;第二步,输入用户的口令 , 该口令是用户自己设置的一个字符串,对其他用户是保密的,是在登录时系统用来辨别真假用户的关键字 。
当用户正确地输入用户名和口令后,就能合法地进入系统 。屏幕显示:
[root@loclhost/root] #
这时就可以对系统做各种操作了 。注意超级用户的提示符是ldquo;#rdquo;,其他用户的提示符是ldquo;$rdquo; 。
2.修改口令
为了更好的保护用户帐号的安全,Linux允许用户随时修改自己的口令,修改口令的命令是passwd , 它将提示用户输入旧口令和新口令,之后还要求用户再次确认新口令,以避免用户无意中按错键 。如果用户忘记了口令,可以向系统管理员申请为自己重新设置一个 。
3.虚拟控制台
Linux是一个真正的多用户操作系统 , 它可以同时接受多个用户登录 。Linux还允许一个用户进行多次登录,这是因为Linux和UNIX一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台进行多次登录 。虚拟控制台的选择可以通过按下Alt键和一个功能键来实现,通常使用F1-F6例如,用户登录后 , 按一下Alt-F2键,用户又可以看到"login:"提示符,说明用户看到了第二个虚拟控制台 。然后只需按Alt-F1键,就可以回到第一个虚拟控制台 。一个新安装的Linux系统默认允许用户使用Alt-F1到Alt-F6键来访问前六个虚拟控制台 。虚拟控制台可使用户同时在多个控制台上工作,真正体现Linux系统多用户的特性 。用户可以在某一虚拟控制台上进行的工作尚未结束时,切换到另一虚拟控制台开始另一项工作 。
退出系统
不论是超级用户,还是普通用户 , 需要退出系统时,在shell提示符下,键入exit命令即可 。
4.查看命令帮助信息
man命令
man命令用于查询命令和程序的使用方法和参数 。
例如:
man ls
将显示ls命令的基本格式和使用方法
Linux系统常用的基本命令入门篇二、关机重启命令
首先,是关机/重启命令 , 仅在虚拟机时使用 , 实际工作中用不到
reboot 一般不跟参数使用,输入指令即可重启
shutdown 一般需要跟参数,例:
shutdown -r 延时多少分钟重启 , 一般使用now
shutdown -r now 立即重启
shutdown -f 强制重启
跟windows一样,linux也存在注销功能
exit
1)halt
halt 可不接参数
halt -f 强制关机
2)poweroff
poweroff 可不接参数使用
poweroff -f 强制关机
3)init 0
4)shutdown 不可单独使用
shutdown -h 分钟数 延时多久关机
shutdown -h now 立即关机
Linux系统常用的基本命令入门篇三、vi编辑
vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏幕纯文本编辑器 。
Linux中的vi编辑器叫vim,它是vi的增强版(vi Improved),与vi编辑器完全兼容,而且实现了很多增强功能 。
vi编辑器支持编辑模式和命令模式 , 编辑模式下可以完成文本的编辑功能,命令模式下可以完成对文件的操作命令,要正确使用vi编辑器就必须熟练掌握着两种模式的切换 。
默认情况下,打开vi编辑器后自动进入命令模式 。从编辑模式切换到命令模式使用ldquo;escrdquo;键,从命令模式切换到编辑模式使用ldquo;Ardquo;、ldquo;ardquo;、ldquo;Ordquo;、ldquo;ordquo;、ldquo;Irdquo;、ldquo;irdquo;键 。
vi编辑器提供了丰富的内置命令 , 有些内置命令使用键盘组合键即可完成,有些内置命令则需要以冒号ldquo;:rdquo;开头输入 。常用内置命令如下:
1 Ctrl u:向文件首翻半屏;
2 Ctrl d:向文件尾翻半屏;
3 Ctrl f:向文件尾翻一屏;
4 Ctrl b:向文件首翻一屏;
5 Esc:从编辑模式切换到命令模式;
6 ZZ:命令模式下保存当前文件所做的修改后退出vi;
7 :行号:光标跳转到指定行的行首;
8 :$:光标跳转到最后一行的行首;
9 x或X:删除一个字符,x删除光标后的 , 而X删除光标前的;
10 D:删除从当前光标到光标所在行尾的全部字符;
11 dd:删除光标行正行内容;
12 ndd:删除当前行及其后n-1行;
13 nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字;
14 p:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的下方;
15 P:粘贴文本操作,用于将缓存区的内容粘贴到当前光标所在位置的上方;
16 /字符串:文本查找操作,用于从当前光标所在位置开始向文件尾部查找指定字符串的内容,查找的字符串会被加亮显示;
17 ?name:文本查找操作 , 用于从当前光标所在位置开始向文件头部查找指定字符串的内容,查找的字符串会被加亮显示;
18 a,bs/F/T:替换文本操作,用于在第a行到第b行之间,将F字符串换成T字符串 。其中,ldquo;s/rdquo;表示进行替换操作;
19 a:在当前字符后添加文本;
20 A:在行末添加文本;
21 i:在当前字符前插入文本;
22 I:在行首插入文本;
23 o:在当前行后面插入一空行;
24 O:在当前行前面插入一空行;
25 :wq:在命令模式下,执行存盘退出操作;
26 :w:在命令模式下,执行存盘操作;
27 :w!:在命令模式下,执行强制存盘操作;
28 :q:在命令模式下,执行退出vi操作;
29 :q!:在命令模式下 , 执行强制退出vi操作;
30 :e文件名:在命令模式下,打开并编辑指定名称的文件;
31 :n:在命令模式下,如果同时打开多个文件,则继续编辑下一个文件;
32 :f:在命令模式下,用于显示当前的文件名、光标所在行的行号以及显示比例;
33 :set nu:在命令模式下 , 用于在最左端显示行号;
34 :set nonu:在命令模式下,用于在最左端不显示行号;
35 :1,3y 复制第一行到第三行
36 :1,3d 删除第一行到第三行
37 :1,3s/str/str_new/g 替换第一行到第三行中的字符串
38 :1,3s/str/str_new 替换第一行到第三行中的字符串第一个字符
39 :1,3 g/str /d 删除第一行到第三行中含有这个字符串的行
Linux常用命令一、查询相关
find
按规则查找某个文件或文件夹,包括子目录
find . -name '_sh' -- 以.sh结尾的文件
find . -name '_hannel_ -- 包含channel字符的文件
find . -name 'build_ -- 以build开头的文件
find . -name 'abc??' -- abc后面有两个字符的文件
grep
查找内容包含指定的范本样式的文件,Global Regular Expression Print
grep -n pattern files -- 规则 -n表示显示行号
grep -n 'PostsActivity' AndroidManifest.xmlgrep -n '\d' AndroidManifest.xmlgrep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方
grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并显示行号
ps -e | grep java -- 所有java进程
ps -e | grep -i qq --所有qq进程,不区分大小写
find . -name '_hannel.xml' | xargs grep -n 'aapt' -- 在以channel.xml结尾的文件中查找包含lsquo;aaptrsquo;关键字的地方
ls | grep 'channel' -- 包含channel关键字的文件
which
在PATH变量指定的路径中,搜索某个系统命令的位置 , 并且返回第一个搜索结果
which zipwhich grep
Linux常用命令二、查看命令
tail
tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File]
从指定点开始将文件写到标准输出 。使用tail命令的-f选项可以方便的查阅正在改变的日志文件 , tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容 。
tail -f test.log,循环查看文件内容,Ctrl c来终止
tail -n 5 test.log,显示文件最后5行内容
tail -n5 test.log,从第5行开始显示文件
more
more [-dlfpcsu] [-num] [ / pattern] [ linenum] [file...]
more命令和cat的功能一样都是查看文件里的内容 , 但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能 。
more3 test.log,显示文件中从第3行起的内容
more -5 test.log,设定每屏显示行数
ls -l | more -5,每页显示5个文件信息
more/day3 test.log , 查找第一个出现"day3"字符串的行,并从该处前两行开始显示输出
less
less [options] [file...]
与more命令一样,less命令也用来分屏显示文件的内容 。但是二者存在差别:less命令允许用户向前或向后浏览文件,而more命令只能向前浏览 。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页 。要退出less程序,应按Q键 。
less test.log,查看文件
ps -ef | less , 查看进程信息并通过less分页显示
history | less , 查看命令历史使用记录并通过less分页显示
less test1.log test2.log,浏览多个文件 , n和p切换文件
watch
watch [options] command
每隔一段时间重复运行一个命令,默认间隔时间是2秒 。要运行的命令直接传给shell(注意引用和转义特殊字符) 。结果会展示为全屏模式,这样你可以很方便的观察改变
watch -n 60 date,执行date命令每分钟一次,输入^C 退出
watch -d ls -l , 查看目录变化
watch -d rsquo;ls -l | fgrep joersquo;,想找joe用户的文件
watch -d 'ls -l|grep scf' , 监测当前目录中 scf' 的文件的变化
watch -n 10 'cat /proc/loadavg',10秒一次输出系统的平均负载
watch -n 1 -d netstat -ant,每隔一秒高亮显示网络链接数的变化
watch -n 1 -d 'pstree | grep http',每隔一秒高亮显示http链接数的变化
Linux常用命令三、文件相关
vi
vi file
按i键,进入编辑模式
按esc键,进入命令模式
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存 , 不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改 , 从上次保存文件开始再编辑
chmod
change mode , 变更文件或目录的读、写、运行权限
chmod [-cfvR] [--help] [--version] mode file...
mode:权限设定字串,格式如下 : [ugoa...][[ -=][rw xX ]...][,...]
u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人 , a 表示这三者皆是
表示增加权限、- 表示取消权限、= 表示唯一设定权限 。
r 表示可读?。?w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行 。
chmod也可以用数字来表示权限 , 语法为:chmod abc file,如chmod 777 file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限 。r=4,w=2,x=1
chmod 777 file,等同于 chmod a=rwx file
chmod ug=rwx,o=x file , 等同于 chmod 771 file
chmod 4755 filename,可使此程序具有root的权限
ls -l 可以查看列出当前用户的文件权限
zip
zip -r filename.zip filesdir
zip -r test.zip ./_把当前所有文件压缩到test.zip
zip -r test.zip test,把test文件所有文件及目录,要是到test.zip
zip -d test.zip test.txt,删除压缩文件中test.txt文件
zip -m test.zip ./test.txt,向压缩文件中test.zip中添加test.txt文件
zip -r test.zip file1 file2 file3 filesdir , 处理多个文件和目录,空格隔开
unzip
unzip zip-file,解压到当前目录
unzip -d dst-dir zip-file , 解压到指定的目录,-d后为指定目录
unzip -n zip-file,不覆盖已经存在的文件,-n为不要覆盖原有的文件
unzip -n -d dst-dir zip-file,解压到指定的目录,不覆盖已经原有的文件
unzip -o -d dst-dir zip-file,-o不必先询问用户覆盖原有文件
unzip -l zip-file , 仅查看压缩文件内所包含的文件
tar
tar cvf test.tar test , 把test下所有文件和目录做备份tar czvf test.tar.gz test,把test下所有文件和目录做备份并进行压缩tar xzvf test.tar.gz,把这个备份文件还原并解压缩tar tvf test.tar | more,查看备份文件的内容,并以分屏方式显示在显示器上
tar czvf test.tar.gz test --exclude=test/svn,备份压缩并排除目录
touch
linux文件权限命令有三种不同类型的用户可对文件或目录进行访问:文件所有者 , 同组用户、其他用户 。所有者一般是文件的创建者 。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户 。在这种情况下 , 系统中每一位用户都能访问该用户拥有的文件或目录 。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限 。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限 。例如:
$ ls -l sobsrc. tgz
-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz
横线代表空许可 。r代表只读,w代表写,x代表可执行 。注意这里共有10个位置 。第一个字符指定了文件类型 。在通常意义上,一个目录也是一个文件 。如果第一个字符是横线,表示是一个非目录的文件 。如果是d , 表示是一个目录 。例如:
– rw- r– r–
普通文件 文件主 组用户 其他用户
是文件sobsrc.tgz 的访问权限,表示sobsrc.tgz是一个普通文件;sobsrc.tgz的属主有读写权限;与sobsrc.tgz属主同组的用户只有读权限;其他用户也只有读权限 。
确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限 。也可以利用chown命令来更改某个文件或目录的所有者 。利用chgrp命令来更改某个文件或目录的用户组 。
下面分别对这些命令加以介绍 。
chmod 命令
chmod命令是非常重要的,用于改变文件或目录的访问权限 。用户用它控制文件或目录的访问权限 。
以主文件夹下的一个名为“cc”的文件夹为例 。下面一步一步介绍如何修改权限:
1.打开终端 。输入”su”(没有引号)
2.接下来会要你输入密码,输入你的root密码 。
3.假设我的文件夹在主目录里,地址为/var/home/dengchao/cc。假设我要修改文件权限为777,则在终端输入chmod777 /var/home/userid/cc 文件夹的权限就变为了777 。
如果是修改文件夹及子文件夹权限可以用chmod -R 777 /var/home/userid/cc
具体的权限(例如777的含意等)在下面解释下:
1.777有3位,最高位7是设置文件所有者访问权限 , 第二位是设置群组访问权限 , 最低位是设置其他人访问权限 。
其中每一位的权限用数字来表示 。具体有这些权限:
r(Read,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限 。
w(Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限 。
x(eXecute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限 。
2. 首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为7时,7用“rwx”表示 –{4(r) 2(w) 1(x)=7}–又如果数值为6 , 则用“rw-”表示–{4(r) 2(w) 0(x)=6}–,”-”表示不具备权限,这里表 示不具备“执行”权限 。
假如我们设定其他用户的访问权限为 “r–”,则数值为4 0 0=4
一开始许多初学者会被搞糊涂 , 其实很简单,我们将rwx看成二进制数,如果有则用1表示,没有则有0表示,那么rwx则可以表示成为:111
而二进制的111就是7 。
3.我们再来看下怎么确定3个数位上的权限 。假如我们要给一个文件设置权限,具体权限如下:
文件所有者有“读”、“写”、“执行”权限 , 群组用户有“读”权限 , 其他用户有“读”权限,则对应的字母表示为”rwx r– r–“,对应的数字为744
一般都是最高位表示文件所有者权限值,第二位表示群组用户权限,最低位表示其他用户权限 。
下面来举些例子熟悉下 。
权限数值
rwx rw- r–764
rw- r– r–644
rw- rw- r–664
该命令有两种用法 。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法 。
1. 文字设定法
chmod [who] [| – | =] [mode] 文件名?
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)” , 即文件或目录的所有者 。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户 。
o 表示“其他(others)用户” 。
a 表示“所有(all)用户” 。它是系统默认值 。
操作符号可以是:
添加某个权限 。
– 取消某个权限 。
= 赋予给定权限并取消其他所有权限(如果有的话) 。
设置mode所表示的权限可用下述字母的任意组合:
r 可读 。
w 可写 。
x 可执行 。
X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性 。
s 在文件执行时把进程的属主或组ID置为该文件的文件属主 。方式“u+s”设置文件的用户ID位 , “g+s”设置组ID位 。
t 保存程序的文本到交换设备上 。
u 与文件属主拥有一样的权限 。
g 与和文件属主同组的用户拥有一样的权限 。
o 与其他用户拥有一样的权限 。
-c : 若该档案权限确实已经更改,才显示其更改动作
-f : 若该档案权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
–help : 显示辅助说明
–version : 显示版本
文件名:以空格分开的要改变权限的文件列表,支持通配符 。在一个命令行中可给出多个权限方式 , 其间用逗号隔开 。例如:chmod g r , o r example使同组和其他用户对文件example 有读权限 。
例1:
$ chmod a x sort
即设定文件sort的属性为:
文件属主(u) 增加执行权限
与文件属主同组用户(g) 增加执行权限
其他用户(o) 增加执行权限
例2:
$ chmod ug w,o-x text
即设定文件text的属性为:
文件属主(u) 增加写权限
与文件属主同组用户(g) 增加写权限
其他用户(o) 删除执行权限
例3:
$ chmod u s a.out
假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):
–rws--x--x 1 inin users 7192 Nov 4 14:22 a.out
并且这个执行文件要用到一个文本文件shiyan1.c , 其文件存取权限为“–rw——-”,即该文件只有其属主具有读写权限 。
当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限),这就是s的功能 。
因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵 。
例4:
$ chmod a–x mm.txt
$ chmod –x mm.txt
$ chmod ugo–x mm.txt
以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者 。
2. 数字设定法
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加 。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o) 。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读) 2(可写)=6(读/写) 。
数字设定法的一般形式为:chmod [mode] 文件名?
例1:
$ chmod 644 mm.txt
$ ls –l
即设定文件mm.txt的属性为:
-rw-r--r-- 1 inin users 1155 Nov 5 11:22 mm.txt
文件属主(u)inin 拥有读、写权限
与文件属主同组人用户(g) 拥有读权限
其他人(o) 拥有读权限
例2:
$ chmod 750 wch.txt
$ ls –l
-rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt
即设定wchtxt这个文件的属性为:
文件主本人(u)inin 可读/可写/可执行权
与文件主同组人(g) 可读/可执行权
其他人(o) 没有任何权限
chgrp命令
功能:改变文件或目录所属的组 。
语法:chgrp [选项] group filename?
参数:
-c或–changes 效果类似”-v”参数,但仅回报更改的部分 。
-f或–quiet或–silent不显示错误信息 。
-h或–no-dereference只对符号连接的文件作修改,而不更动其他任何相关文件 。
-R或–recursive递归处理,将指定目录下的所有文件及子目录一并处理 。
-v或–verbose显示指令执行过程 。
–help在线帮助 。
–reference=lt;参考文件或目录gt;把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同 。
–version显示版本信息 。
该命令改变指定指定文件所属的用户组 。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名 。文件名是以空格分开的要改变属组的文件列表,支持通配符 。如果用户不是该文件的属主或超级用户,则不能改变该文件的组 。
该命令的各选项含义为:
– R 递归式地改变指定目录及其下的所有子目录和文件的属组 。
例1:
$ chgrp - R book /opt/local /book
改变/opt/local /book/及其子目录下的所有文件的属组为book 。
chown 命令
功能:更改某个文件或目录的属主和属组 。这个命令也很常用 。例如root用户把自己的一个文件拷贝给用户yusi,为了让用户yusi能够存取这个文件,root用户应该把这个文件的属主设为yusi , 否则,用户yusi无法存取这个文件 。
语法:chown [选项] 用户或组 文件
说明:chown将指定文件的拥有者改为指定的用户或组 。用户可以是用户名或用户ID 。组可以是组名或组ID 。文件是以空格分开的要改变权限的文件列表,支持通配符 。
参数说明:
user : 新的档案拥有者的使用者 ID
group : 新的档案拥有者的使用者群体(group)
-c : 若该档案拥有者确实已经更改,才显示其更改动作
-f : 若该档案拥有者无法被更改也不要显示错误讯息
-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案
-v : 显示拥有者变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
–help : 显示辅助说明
–version : 显示版本
例1:把文件yusi123.com的所有者改为yusi 。
$ chown yusi yusi123.com
例2:把目录/demo及其下的所有文件和子目录的属主改成yusi , 属组改成users 。
$ chown - R yusi.users /demo
例如:chown qq /home/qq(把home目录下的qq目录的拥有者改为qq用户)
例如:chown -R qq /home/qq(把home目录下的qq目录下的所有子文件的拥有者改为qq用户)
LINUX常用命令3、su、df、du、磁盘分区一、 su 、sudo 、限制root远程登陆
su- username
带用户环境切换用户
su- -c"touch /tmp/123.txt"user1
以user1用户创建/tmp/123.txt 文件
没有家目录的用户可以用模板新建家目录
mkdir-p /home/user4chownuser4:user4/home/user4cp /etc/skel/.bash*/home/user4chown-R user4:user4 /home/user4/
普通用户临时授权root用户权限去执行一条命令
visudo
可以查看sudo配置文件
在命令前加入NOPASSWD: 执行sudo时就不需要再输入用户的密码
例子linux常用命令授权:
User_Alias USER=chen1,chen2
Cmnd_Alias SU=/usr/bin/su
USER ALL=(ALL) NOPASSWD:SU
禁止root用户远程登陆
vi/etc/ssh/sshd_configPermitRootLoginno//修改此处systemctl restart sshd.service
二、df命令、du命令、磁盘分区
df-h
自动适应文件大小的单位linux常用命令授权 , 查看磁盘使用情况
free
可以查看swap的使用情况
df-i
查看各个分区inode的使用情况
有的时候明明磁盘的内存还有剩余 , 但是却无法写入新文件 , 这时候就可能是inode用完linux常用命令授权了 。
du-sh
自动适应单位显示文件或文件夹大小
du不加后缀的时候和du -l 一样,显示文件夹下文件的大小
du-lh
自动适应单位显示文件夹下文件的大小
fdisk-l
列出linux 的磁盘信息
fdisk/dev/sdb
m帮助,直接按p是查看分区情况 n新建分区 p建立主分区 e扩展分区 d删除分区 , 起始扇区默认2048就可以啦,last 扇区2G 就是将分区一的大小设置为2Glinux常用命令授权;输错命令用ctrlu清除
BLOCKS是分区的大小,system是分区的类型,主分区和逻辑分区都是linux,扩展分区是extended
主分区的分区号可以为空,而逻辑分区的分区号必须连续linux常用命令授权;逻辑分区以sdb5开始,分区之后输入w可以保存分区,q则不保存操作直接退出
三、磁盘格式化、磁盘挂载、手动增加swap空间
1.磁盘格式化
cat/etc/filesystems//查看系统支持的文件格式,centos7默认xfs,centos6默认ext4
mount//查看系统的文件格式
mke2fs
-t指定文件格式 ext4 、ext3
-b指定块大小,文件都比较大时,块可以大一点,比如视频、高清图片
比较小时可以将块设置小一点,加快读取速度
-m指定给root用户预留的空间大?。?就是1% , 0.1就是0.1%
-i指定多少字节占一个inode号
如果不指定-t文件格式,则默认为ext2格式
mkfs.ext4/dev/sdb1//将分区格式化为ext4格式mkfs.xfs-f/dev/sdb1//将分区格式化为xfs格式\
分区只有挂载了才可以使用mount查询到,没有挂载的分区可以用
blkid/dev/sdb1
mkfs.ext4 == mke2fs -t ext4
mkfs.ext4与mke2fs支持的选项相同
xfs格式只能用mkfs.xfs 创建
2.磁盘挂载
mount/dev/sdb/mnt///将 /dev/sdb挂载到mnt下 mount UUID="2d8e7749-f2f7-4de5-b1b9-b6bf758d2f37"/mnt///这里的uuid是用blkid /dev/sdb 查到的
卸载磁盘
umount/dev/sdb
如果当前目录在/dev/sdb下则需要退出当前分区
也可以直接用
umount-l/dev/sdbumount-l/mnt/
mount
man mount 可以查看mount的具体用法
/defaults 可以查找默认用法
找到下面这一行
Use default options: rw, suid, dev, exec, auto, nouser, and async.
rw读写权限
suid可以设置suid权限
dev,系统默认不用管
exec可执行
auto自动挂载
nouser是否允许普通用户挂载,默认不允许
async 不实时同步内存的东西到磁盘(减轻磁盘压力)
mount -o remount,rw/dev/sdb//重新挂载
vi/etc/fstab//系统开机都挂载哪些文件
四、手动增加虚拟内存
ddif=/dev/zeroof=/tmp/newdiskbs=1M count=100//创建虚拟磁盘
if指定源,一般写/dev/zero , 它是unix系统特有的一个文件 , 可以源源不断的提供'0',of指定目标文件 , bs指定块大小 , count指定块的数量
mkswap -f /tmp/newdisk//格式化为swapswapon/tmp/newdisk//将新建的swap加载free-m//显示内存使用大小,-m指定单位为mswapoff/tmp/newdisk//将虚拟内存卸载
五、lvm
lvm创建过程
创建物理卷创建卷组创建逻辑分区格式化为需要的格式挂载分区
具体介绍日志
fdisk /dev/sdb
t 选择分区,8e //将分区转换为lvm格式 , w退出
创建物理卷
1.
yumprovides"/*/pvcreate"
通配查询pvcreate命令的软件包名
yum install -y lvm2//安装lvm
partprobe //生成分区文件
2.
pvcreate/dev/sdb1pvcreate/dev/sdb2pvcreate/dev/sdb3
pvdisplay查看已经创建的物理卷
创建卷组
1.pvs
可以直观的查看物理卷有哪些
2.创建卷组,将sdb1和sdb2设置为一个卷组
vgcreatevg1 /dev/sdb1 /dev/sdb2
vgdisplay可以查看卷组信息
创建逻辑分区
lvcreate-L100M-n lv1 vg1
从vg1卷组中创建名字为lv1大小100M的逻辑分区
-L指定分区大小
-n指定分区名字
将分区格式化为ext4格式
mkfs.ext4 /dev/vg1/lv1
然后将文件挂载
mount/dev/vg1/lv1 /mnt
ext4扩容逻辑分区
umount/mnt///卸载分区lvresize -L200M/dev/vg1/lv1//扩展分区e2fsck -f/dev/vg1/lv1//检查磁盘是否有错误resize2fs/dev/vg1/lv1//更新逻辑分区大?。?不然重新挂载会无法识别扩容的大小
ext4缩容
umount/mnt///卸载分区e2fsck -f/dev/vg1/lv1//检查磁盘是否有错误resize2fs/dev/vg1/lv1 100M//将分区缩小为100Mlvresize -L100M/dev/vg1/lv1//重新设置卷大小
xfs扩容
1.扩容与缩容不会更改分区中的文件,xfs只可以扩容不可以缩容;
2.如果磁盘已经挂载要先umount 卸载
然后格式化为xfs.
mkfs.xfs-f/dev/vg1/lv1
XFS的扩容不需要先卸载,直接扩容即可
lvresize -L200M /dev/vg1/lv1xfs_growfs/dev/vg1/lv1//更新分区大小
关于扩容缩容的总结
ext4可以扩容和缩容而且需要卸载后操作,xfs只可以扩容,不需要卸载
ext4扩容
lvresize -L 100M /dev/vg1/lv1e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1
缩容
e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1 100Mlvresize -L 100M /dev/vg1/lv1
xfs扩容
lvresize-L100M/dev/vg1/lv1xfs_growfs /dev/vg1/lv1
在分区空间用完之后就需要扩容卷组,然后再扩容
卷组扩容
vgextendvg1 /dev/sdb3
将 /dev/sdb3加入到vg1卷组
【linux常用命令授权 linux sh授权】关于linux常用命令授权和linux sh授权的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
推荐阅读
- 企业如何做好优化推广发展,优化企业发展战略
- 关于postgresql中数字类型的信息
- 像使命召唤一样的动作游戏,有哪些像使命召唤一样的游戏
- sca函数python scandir python
- 比较好的电商erp系统,电商erp软件哪个好
- go语言开发web优势 go语言 web开发
- 固态硬盘怎么样加速运行,固态硬盘怎么样加速运行速度
- ppt里怎么写字,如何在ppt里面写字写文字
- 软件代理权的佣金是多少,软件代理费怎么入账