2019-03-13 13:44:06 qq_39402742 阅读数 491
  • 玩转Linux:常用命令实例指南

    本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通 。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 注意: 1、本课程本月原价99元,截止2月22日前仅需29元!购课就送5门价值300元的编程课! 2、课程内容不仅是大纲上这些,2月底前老师会继续增加10余节课程,届时会恢复原件!现在购买最划算! 3、购课后登陆csdn学院官网,在课程目录页面即可下载课件。 学完即可轻松应对工作中 85% 以上的 Linux 使用场景 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本课程【现在享受秒杀价29元】 3)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 注意: 1)现在购买至少享受70元优惠; 2)购课后添加微信itxy06,发送订单截图领取300元编程礼包。 --------------------------------------------------------------- 这门课程,绝对不会让你觉得亏! 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+300元编程礼包。   人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。   在这门课中,我们保证你能收获到这些 1)快速掌握 Linux 常用命令及配置 2)Linux核心知识点 3) 文件、进程、磁盘、用户管理,以及网络工具命令、文件传输等 4)Vi/Vim编辑器用法  

    5479 人正在学习 去看看 严宇
  • linux常用快捷键

ctrl+c  强制终止当前命令

ctrl+l   清屏

ctrl+a  光标移动到命令行首

ctrl+e  光标移动到命令行尾

ctrl+u  从光标所在位置删除到行首

ctrl+z  把命令放入后台

ctrl+r  在历史命令中搜索

2019-02-25 19:32:04 qq_32371827 阅读数 16
  • 玩转Linux:常用命令实例指南

    本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通 。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 注意: 1、本课程本月原价99元,截止2月22日前仅需29元!购课就送5门价值300元的编程课! 2、课程内容不仅是大纲上这些,2月底前老师会继续增加10余节课程,届时会恢复原件!现在购买最划算! 3、购课后登陆csdn学院官网,在课程目录页面即可下载课件。 学完即可轻松应对工作中 85% 以上的 Linux 使用场景 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本课程【现在享受秒杀价29元】 3)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 注意: 1)现在购买至少享受70元优惠; 2)购课后添加微信itxy06,发送订单截图领取300元编程礼包。 --------------------------------------------------------------- 这门课程,绝对不会让你觉得亏! 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+300元编程礼包。   人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。   在这门课中,我们保证你能收获到这些 1)快速掌握 Linux 常用命令及配置 2)Linux核心知识点 3) 文件、进程、磁盘、用户管理,以及网络工具命令、文件传输等 4)Vi/Vim编辑器用法  

    5479 人正在学习 去看看 严宇

Linux 命令行快捷键
https://www.cnblogs.com/aslongas/p/5899586.html

涉及在linux命令行下进行快速移动光标、命令编辑、编辑后执行历史命令、Bang(!)命令、控制命令等。让basher更有效率。

常用
ctrl+左右键:在单词之间跳转
ctrl+a:跳到本行的行首
ctrl+e:跳到页尾
Ctrl+u:删除当前光标前面的文字 (还有剪切功能)
ctrl+k:删除当前光标后面的文字(还有剪切功能)
Ctrl+L:进行清屏操作
Ctrl+y:粘贴Ctrl+u或ctrl+k剪切的内容
Ctrl+w:删除光标前面的单词的字符
Alt – d :由光标位置开始,往右删除单词。往行尾删
说明
Ctrl – k: 先按住 Ctrl 键,然后再按 k 键;
Alt – k: 先按住 Alt 键,然后再按 k 键;
M – k:先单击 Esc 键,然后再按 k 键。
移动光标
Ctrl – a :移到行首
Ctrl – e :移到行尾
Ctrl – b :往回(左)移动一个字符
Ctrl – f :往后(右)移动一个字符
Alt – b :往回(左)移动一个单词
Alt – f :往后(右)移动一个单词
Ctrl – xx :在命令行尾和光标之间移动
M-b :往回(左)移动一个单词
M-f :往后(右)移动一个单词
编辑命令
Ctrl – h :删除光标左方位置的字符
Ctrl – d :删除光标右方位置的字符(注意:当前命令行没有任何字符时,会注销系统或结束终端)
Ctrl – w :由光标位置开始,往左删除单词。往行首删
Alt – d :由光标位置开始,往右删除单词。往行尾删
M – d :由光标位置开始,删除单词,直到该单词结束。
Ctrl – k :由光标所在位置开始,删除右方所有的字符,直到该行结束。
Ctrl – u :由光标所在位置开始,删除左方所有的字符,直到该行开始。
Ctrl – y :粘贴之前删除的内容到光标后。
ctrl – t :交换光标处和之前两个字符的位置。
Alt + . :使用上一条命令的最后一个参数。
Ctrl – _ :回复之前的状态。撤销操作。
Ctrl -a + Ctrl -k 或 Ctrl -e + Ctrl -u 或 Ctrl -k + Ctrl -u 组合可删除整行。

Bang(!)命令
!! :执行上一条命令。
foobar :把上一条命令里的foo替换为bar,并执行。
!wget :执行最近的以wget开头的命令。
!wget:p :仅打印最近的以wget开头的命令,不执行。
!$ :上一条命令的最后一个参数, 与 Alt - . 和 $_ 相同。
!* :上一条命令的所有参数
!*:p :打印上一条命令是所有参数,也即 !*的内容。
^abc :删除上一条命令中的abc。
foobar :将上一条命令中的 foo 替换为 bar
foobar^ :将上一条命令中的 foo 替换为 bar
!-n :执行前n条命令,执行上一条命令: !-1, 执行前5条命令的格式是: !-5
查找历史命令
Ctrl – p :显示当前命令的上一条历史命令
Ctrl – n :显示当前命令的下一条历史命令
Ctrl – r :搜索历史命令,随着输入会显示历史命令中的一条匹配命令,Enter键执行匹配命令;ESC键在命令行显示而不执行匹配命令。
Ctrl – g :从历史搜索模式(Ctrl – r)退出。
控制命令
Ctrl – l :清除屏幕,然后,在最上面重新显示目前光标所在的这一行的内容。
Ctrl – o :执行当前命令,并选择上一条命令。
Ctrl – s :阻止屏幕输出
Ctrl – q :允许屏幕输出
Ctrl – c :终止命令
Ctrl – z :挂起命令
重复执行操作动作
M – 操作次数 操作动作 : 指定操作次数,重复执行指定的操作。

2018-09-29 13:14:03 li528405176 阅读数 215
  • 玩转Linux:常用命令实例指南

    本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通 。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 注意: 1、本课程本月原价99元,截止2月22日前仅需29元!购课就送5门价值300元的编程课! 2、课程内容不仅是大纲上这些,2月底前老师会继续增加10余节课程,届时会恢复原件!现在购买最划算! 3、购课后登陆csdn学院官网,在课程目录页面即可下载课件。 学完即可轻松应对工作中 85% 以上的 Linux 使用场景 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本课程【现在享受秒杀价29元】 3)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 注意: 1)现在购买至少享受70元优惠; 2)购课后添加微信itxy06,发送订单截图领取300元编程礼包。 --------------------------------------------------------------- 这门课程,绝对不会让你觉得亏! 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+300元编程礼包。   人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。   在这门课中,我们保证你能收获到这些 1)快速掌握 Linux 常用命令及配置 2)Linux核心知识点 3) 文件、进程、磁盘、用户管理,以及网络工具命令、文件传输等 4)Vi/Vim编辑器用法  

    5479 人正在学习 去看看 严宇

目录

高级键盘操作

命令行

移动命令行光标

修改命令行文本

剪切和复制

自动补全

历史命令

历史命令展开

权限控制

拥有者、组成员和其他人

读取、写入和执行

更改文件模式

设置默认权限

一些特殊权限

切换用户

更改文件所有者和用户组

更改用户密码

 创建新的用户与删除用户


高级键盘操作

Linux终端支持各种快捷键操作。掌握这些快捷键以及命令行交互式编辑特性,基本可以告别鼠标操作了。

clear - 清空屏幕

history - 显示历史列表内容

小技巧:Linux的图形用户界面中,非最大化的窗口是默认隐藏顶部选项卡的,可以通过保持按下Alt键来显示它们。

命令行

bash之所以可以编辑命令行,是使用了一个叫做Readline的库(开源的跨平台程序库,提供了交互式的文本编辑功能,如命令补全、搜索历史命令、方向键可以移动光标、行编辑快捷键等等)。

一些命令行的快捷按键组合(尤其使用 Alt 键的组合),可能会被 GUI 拦截来触发其它的功能。 当使用幕后控制台时,所有的按键组合都应该能够正确地工作。

移动命令行光标

光标移动命令
快捷键 作用
Ctrl-a 移动光标到行首。
Ctrl-e 移动光标到行尾。
Ctrl-f 光标右移一个字符;和右箭头作用一样。
Ctrl-b 光标左移一个字符;和左箭头作用一样。
Alt-f 光标前移一个字符串。
Alt-b 光标后移一个字符串。
Ctrl-l 清空屏幕,移动光标到左上角。clear 命令完成同样的工作。

修改命令行文本

文本编辑命令
快捷键 作用
Ctrl-d 删除光标位置的字符。
Ctrl-t 光标位置的字符和光标前面的字符互换位置。
Alt-t 光标位置的字和其前面的字互换位置。
Alt-l 把从光标位置到字尾的字符转换成小写字母。
Alt-u 把从光标位置到字尾的字符转换成大写字母。

剪切和复制

Readline 的文档使用术语 killing 和 yanking 来指我们平常所说的剪切和粘贴。 剪切下来的本文被存储在一个叫做剪切环(kill-ring)的缓冲区中。

剪切和粘贴命令
快捷键 作用
Ctrl-k 剪切从光标位置到行尾的文本。
Ctrl-u 剪切从光标位置到行首的文本。
Alt-d 剪切从光标位置到词尾的文本。
Alt-Backspace 剪切从光标位置到词头的文本。如果光标在一个单词的开头,剪切前一个单词。
Ctrl-y 把剪切环中的文本粘贴到光标位置。

自动补全

当你敲入一个命令的一半, 按下 tab 键,命令就会自动补全。它能帮助我们完成路径名、变量、用户名、命令、主机名的自动补全。当然了,只有系统中存在的资源才能够自动补全。但是要注意的是,如果我们输入的内容不止能够匹配一个结果,则自动补全不会生效,如果我们执意按tab键,它会给我们列出所有可能的结果。

自动补全命令
快捷键 作用
Alt-? 显示可能的自动补全列表。在大多数系统中,你也可以通过按两次 tab 键完成这个。
Alt-* 插入所有可能的自动补全。当你想要使用多个可能的匹配项时,这个很有帮助。

小提示,Alt也可称作元键。

目前的 bash 版本有一个叫做可编程自动补全的工具,允许你来加入额外的自动补全规则。可编程自动补全是由 shell 函数实现的。

历史命令

bash 维护着一个已经执行过的命令的历史列表,默认最多存储500个命令。保存在家目录下,一个叫做 .bash_history 的文件里。

搜索历史命令

history | less

我们可以通过历史命令列表中的行号展开该命令。如第6行:

 !6

bash 也具有增量搜索历史列表的能力。意思是在字符输入的同时,bash 会去搜索历史列表(直接出结果,并高亮匹配的第一个字),每多输入一个字符都会使搜索结果更接近目标。输入 Ctrl-r启动增量搜索, 接着输入你要寻找的字。找到以后,可以敲入 Enter 来执行命令, 或者输入 Ctrl-j,从历史列表中复制这一行到当前命令行。输入 Ctrl-g 或者 Ctrl-c,退出搜索

历史命令
快捷键 作用
Ctrl-p 移动到上一个历史条目。类似于上箭头按键。
Ctrl-n 移动到下一个历史条目。类似于下箭头按键。
Alt-< 移动到历史列表开头。
Alt-> 移动到历史列表结尾,即当前命令行。
Ctrl-r 反向增量搜索。从当前命令行开始,向上增量搜索。
Alt-p 反向搜索,非增量搜索。(输入要查找的字符串,按下 Enter来执行搜索)。
Alt-n 向前搜索,非增量。
Ctrl-o 执行历史列表中的当前项,并移到下一个。如果你想要执行历史列表中一系列的命令,这很方便。

历史命令展开

历史展开命令
序列 作用
!! 重复最后一次执行的命令。可能按下上箭头按键和 enter 键更容易些。
!number 重复历史列表中第 number 行的命令。
!string 重复最近历史列表中,以这个字符串开头的命令。
!?string 重复最近历史列表中,包含这个字符串的命令。

除非确定历史列表中的条目内容,否则要小心谨慎地使用 “!string” 和 “!?string” 格式。

脚本

除了 bash 中的命令历史特性,许多 Linux 发行版包括一个叫做 script 的程序, 这个程序可以记录整个 shell 会话,并把 shell 会话存在一个文件里面。

基本语法为:script filename

filename 是指用来存储 shell 会话记录的文件名。如果没有指定文件名,则使用文件 typescript。

权限控制

Unix 传统中的操作系统不同于 MS-DOS 传统中的系统,区别在于它们不仅是多任务系统,而且也是多用户系统。意味着多个用户可以在同一时间使用同一台计算机。尽管计算机可能只有一个键盘和一个监视器,但是可以支持远程用户通过ssh登录并操作这台电脑。远程用户也能运行图形界面应用程序,并且图形化的输出结果会出现在远端的显示器上。 X 窗口系统把这个作为基本设计理念的一部分,并支持这种功能。

为了支持多用户特性,必须设计一种避免用户之间互相影响的机制,即权限。

拥有者、组成员和其他人

Unix 安全模型中,当一个用户拥有一个文件或目录时, 即拥有对这个文件或目录访问权限的控制权。一个或多个用户可以组成用户组,用户组成员对文件和目录的访问权限由所有者授予。除了用户组成员,文件所有者也可以给其他所有人操作权限。

可以用 id 命令,来查看自己的信息:

id

用户帐户 定义在/etc/passwd 文件里面,用户组定义在/etc/group 文件里面。当用户帐户和用户组创建以后, 这些文件随着文件/etc/shadow 的变动而修改,文件/etc/shadow 包含了关于用户密码的信息。 对于每个用户帐号,文件/etc/passwd 定义了用户(登录)名、uid、gid、帐号的真实姓名、家目录和登录 shell。其中除了普通用户帐号之外,还有超级用户(uid 0)帐号,和各种各样的系统用户。

许多类 Unix 的系统会把普通用户分配到一个公共的用户组中,例如“users”,现在的 Linux 会创建只有一个成员的与用户同名的用户组。这样使某种类型的权限分配更容易些。

读取、写入和执行

对于文件和目录的访问权限是根据读、写和执行来定义的。

使用 ls 命令的 -l 选项可以输出一个文件的操作权限:

ldz@MSI:~$ > a.txt
ldz@MSI:~$ ls -l a.txt
-rw-rw-rw- 1 ldz ldz 0 Sep 27 20:21 a.txt

前十个字符表示文件的属性。第一个字符表示文件类型

文件类型
属   性 文件类型
-    一个普通文件
d   一个目录
l   一个符号链接。注意对于符号链接文件,剩余的文件属性总是"rwxrwxrwx",而且都是虚拟值。真正的文件属性是指符号链接所指向的文件的属性。
c   一个字符设备文件。这种文件类型是指按照字节流来处理数据的设备。 比如说终端机或者调制解调器
b   一个块设备文件。这种文件类型是指按照数据块来处理数据的设备,例如一个硬盘或者 CD-ROM 盘。

剩下的九个字符叫做文件模式,代表着文件所有者、文件组所有者和其他人的读、写和执行权限。

权限属性
属性 文件 目录
r 允许打开并读取文件内容。 允许列出目录中的内容,前提是目录必须设置了可执行属性(x)。
w 允许写入文件内容或截断文件。但是不允许对文件进行重命名或删除,重命名或删除是由目录的属性决定的。 允许在目录下新建、删除或重命名文件,前提是目录必须设置了可执行属性(x)。
x 允许将文件作为程序来执行,使用脚本语言编写的程序必须设置为可读才能被执行。 允许进入目录,例如:cd directory 。

更改文件模式

可以利用 chmod 命令更改文件或目录的模式(权限)。注意只有文件的所有者或者超级用户才能更改文件或目录的模式。chmod 命令支持两种不同的方法来改变文件模式:八进制数字表示法或符号表示法

人类因为天生有十个手指,利用以10为基数的数字系统来计数。计算机,生来只有一个手指,只能表示0和1,因此它以二进制来计数。

八进制表示法

每个八进制数字代表了 3 个二进制数字,这种对应关系,正好映射到用来存储文件模式所使用的方案上。

八进制 二进制 文件模式
0 000 ---
1 001 --x
2 010 -w-
3 011 -wx
4 100 r--
5 101 r-x
6 110 rw-
7 111 rwx

通过使用3个八进制数字,我们能够设置文件所有者、用户组和其他人的权限:

chmod 600 a.txt #6的八进制为110,表示文件所有者拥有读写的权限,而用户组和其他人无权限。

虽然八进制到二进制的映射看起来不方便,但通常只会用到一些常见的映射关系: 7 (rwx),6 (rw-),5 (r-x),4 (r--),和 0 (---)。

符号表示法

符号表示法分为三部分:更改会影响谁, 要执行哪个操作,要设置哪种权限。通过字符 “u”、“g”、“o”和 “a” 的组合来指定 要影响的对象:

chmod 命令符号表示法
u "user"的简写,意思是文件或目录的所有者。
g 用户组。
o "others"的简写,意思是其他所有的人。
a "all"的简写,是"u", "g"和“o”三者的联合。

如果没有指定字符,则默认使用”all”。执行的操作可能是一个 “+”字符表示加上一个权限, 一个 “-”字符表示删掉一个权限,或者是一个 “=”字符表示只有指定的权限可用,其它所有的权限被删除。权限由 “r”、“w”和 “x” 来指定。

chmod 符号表示法实例
u+x 为文件所有者添加可执行权限。
u-x 删除文件所有者的可执行权限。
+x 为文件所有者,用户组,和其他所有人添加可执行权限。 等价于 a+x。
o-rw 除了文件所有者和用户组,删除其他人的读权限和写权限。
go=rw 给文件所属的组和文件所属者/组以外的人读写权限。如果文件所属组或其他人已经拥有执行的权限,执行权限将被移除。
u+x,go=rw 给文件拥有者执行权限并给组和其他人读和执行的权限。多种设定可以用逗号分开。

 

我们也可以在GUI中更加直观的设置文件和目录的权限。

 

设置默认权限

创建一个文件时,umask 命令控制着文件的默认权限。umask 命令使用 4 位的八进制表示法来表达从文件模式属性中删除一个位掩码。对于普通文件和目录的权限设置,我们只关注后 3 位,将掩码化为二进制后哪一个比特位为1,删除该对应位置权限

首先查看默认的掩码值:

ldz@MSI:~$ umask
0000

也就是没有为1的比特位,因此对应我们前面创建的 a.txt 文件的权限为:-rw-rw-rw- (由于a.txt既不是脚本文件又不是可执行文件,因此没有执行权限)。

我们将umask修改为 0002 ,再创建一个文件观察其权限:

ldz@MSI:~$ umask 0002
ldz@MSI:~$ > a1.txt
ldz@MSI:~$ ls -l a1.txt
-rw-rw-r-- 1 ldz ldz 0 Sep 27 21:28 a1.txt

将掩码化为二进制,000 000 000 010 ,比特位为1的位置,正好对应新建文件缺少的权限。

注意:umask 命令设置的掩码值只能在当前 shell 会话中生效,若当前 shell 会话结束后,则必须重新设置。

一些特殊权限

虽然通常一个八进制的权限掩码用三位数字来表示,但是从技术层面上来讲, 用四位数字来表示它更确切些。因为除了读取、写入和执行权限之外,还有其它较少用到的权限设置。比如:

setuid 位(八进制4000)

当应用到一个可执行文件时,它把有效用户 ID 从运行程序的用户设置成程序所有者的 ID。这种操作通常会应用到一些由超级用户所拥有的程序。设置了setuid位后,当普通用户运行一个由根用户(root) 所有的程序时,这个程序运行时具有超级用户的特权,这样程序就可以访问普通用户禁止访问的文件和目录。

setgid 位(八进制2000)

类似于 setuid 位,把有效用户组 ID 从运行程序的用户组 ID 更改为文件所有者的组 ID。如果设置了一个目录的 setgid 位,则目录中新创建的文件具有这个目录用户组的所有权,而不是文件创建者所属用户组的所有权。当一个普通用户组中的成员,需要访问共享目录中的所有文件,而不用管文件所有者的主用户组时, 那么设置 setgid 位很有用处。

sticky 位(八进制1000)

继承于 Unix,在 Unix 中,它可能把一个可执行文件标志为“不可交换的”。在 Linux 中,默认不设置文件的 sticky 位,但是如果一个目录设置了 sticky 位, 那么它能阻止其他用户删除或重命名文件。这个经常用来控制访问共享目录,比方说/tmp。

 

特殊权限使用方法:

chmod u+s 可执行文件名

ldz@MSI:~$ chmod u+s a
ldz@MSI:~$ ls -l a
-rwsrwxrwx 1 ldz ldz 9328 Sep 28 11:04 a #可以看到用户的执行权限由之前的x更改为了s

chmod g+s 目录

ldz@MSI:~/bb$ chmod g+s de
ldz@MSI:~/bb$ ls -l
total 0
drwxrwsrwx 0 ldz ldz 512 Sep  3 10:48 de  #可以看到用户组的执行权限由之前的x更改为了s

chmod +t 目录

ldz@MSI:~/bb$ chmod +t de
ldz@MSI:~/bb$ ls -l
total 0
drwxrwsrwt 0 ldz ldz 512 Sep  3 10:48 de  #可以看到其他用户的执行权限由之前的x更改为了t

切换用户

有三种方式可以切换用户身份

  1. 注销系统并以其他用户身份重新登录系统。

  2. 使用 su 命令。

  3. 使用 sudo 命令。

第一种方法十分不方便,跳过就好。下面介绍另外两种。

使用 su 命令切换用户

使用方法为:su 选项 username

选项 作用
-c<指令>或--command=<指令> 执行完指定的指令后,即恢复原来的身份
-f或--fast 适用于csh与tsch,使shell不用去读取启动文件
-l或--login 改变身份时,也同时变更工作目录,以及shell环境
-m,-p或--preserve-environment 变更身份时,不要变更环境变量
-s<shell>或--shell=<shell> 指定要执行的shell

如果命令不包含参数选项,则仅仅切换用户身份,工作目录和shell环境不会改变(只有切换了Shell环境才不会出现PATH环境变量错误)。如果包含”-l”选项,那么会为指定用户启动一个需要登录的 shell。这意味着会加载此用户的 shell 环境, 并且工作目录会更改到这个用户的家目录。如果不指定用户,那么就假定是超级用户。注意,选项”-l”可以缩写为”-“。

eg:启动超级用户的 shell

su -

按下回车符之后,shell 提示我们输入超级用户的密码。如果密码输入正确,出现一个新的 shell 提示符, 表明这个 shell 具有超级用户特权(提示符的末尾字符是”#”而不是”$”),并且当前工作目录是超级用户的家目录 (通常是/root)。一旦进入一个新的 shell,我们能执行超级用户所使用的命令。当工作完成后, 输入”exit”,则返回到原来的 shell。

也可以利用“-c”选项只执行单个命令,而不是启动一个新的可交互的 shell:

su -c 'command'

使用这种模式,命令传递到一个新 shell 中执行。注意要把命令用单引号引起来,因为我们不想命令在我们的 shell 中展开,而是在新 shell 中展开。

使用 sudo 命令以另一个用户身份执行命令

管理员能够配置 sudo 命令,从而允许普通用户以不同的身份(通常是超级用户),来执行命令。经过配置,sudo 命令不要求超级用户的密码,而是使用自己的密码来认证。与 su 的一个重要区别是 sudo 不会重新启动一个 shell,也不会加载另一个用户的 shell 运行环境。

查看 sudo 命令被授予了哪些权限,可以使用“-l”选项:

ldz@MSI:~$ sudo -l
[sudo] password for ldz:
User ldz may run the following commands on MSI.localdomain:
    (ALL : ALL) ALL

默认是 ALL 。注意,在第一次使用sudo命令之后,sudo命令会信任你几分钟,接下来再次使用sudo命令时不会提示输入密码,直到计时结束。

更改文件所有者和用户组

 chown 命令可以用来更改文件或目录的所有者和用户组。使用这个命令需要超级用户权限。

使用方法:chown 参数 filename...

chown 参数实例
参数 结果
bob 把文件所有者从当前属主更改为用户 bob。
bob:users 把文件所有者改为用户 bob,文件用户组改为用户组 users。
:admins 把文件用户组改为组 admins,文件所有者不变。
bob: 文件所有者改为用户 bob,文件用户组改为用户 bob 登录系统时所属的用户组。

更改用户组所有权 

旧版 Unix 系统中,chown 命令只能更改文件所有者,不能更改用户组。后者需要 chgrp 命令来完成,chgrp 命令与 chown 命令使用方法类似。

更改用户密码

使用 passwd 命令,来设置或更改用户密码。

使用方法:passwd  username

不带用户名参数时,默认修改当前用户密码,passwd 命令会强迫你使用“强”密码。拒绝接受太短的密码、与先前相似的密码、 字典中的单词作为密码或者是太容易猜到的密码。

如果具有超级用户权限,还可以指定一个用户名作为 passwd 命令的参数,设置另一个用户的密码。

修改超级用户密码有两种方式,第一种是先进入root用户,然后输入passwd,适用于单纯想要更新密码的。第二种是直接在普通用户输入sudo passwd root 修改密码,适用于忘记了root用户密码的情况。

 创建新的用户与删除用户

Linux提供adduser与useradd两个命令用来创建新的用户。但都需要使用root权限。

adduser 参数 username #创建一个普通用户

deluser username #删除一个普通用户

eg:

adduser ldz

如果不设置中间参数,则默认在/home下自动创建用户目录,设置系统shell程序(通常为/bin/bash),会在创建时会提示设置密码。新创建的用户可以在电脑重启时用来登入GUI,也可以在系统设置中与原来的用户随时切换。

useradd 选项 username #创建一个普通用户

userdel username #删除一个普通用户

主要选项
-c:加上备注文字,备注文字保存在passwd的备注栏中。 
-d:指定用户登入时的启始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号。

如果不使用任何选项,则默认只创建一个用户名,还需要手动设定登录密码、shell程序、用户目录等。注意:使用useradd新创建的用户,不可以用来登入GUI,只能在终端中切换该用户。使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中。

eg:

useradd csdn  #新建用户

passwd csdn  #设置密码

usermod -s /bin/bash csdn  #设置shell程序

usermod -d /home/csdn csdn  #指定用户目录

 

有关用户和用户组管理的命令:useradd(添加)  usermod(修改)  userdel(删除)

                                                  groupadd(添加)   groupmod(修改)  groupdel(删除)

 

 

 

2014-01-14 17:42:20 zkaipmoo 阅读数 629
  • 玩转Linux:常用命令实例指南

    本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通 。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 注意: 1、本课程本月原价99元,截止2月22日前仅需29元!购课就送5门价值300元的编程课! 2、课程内容不仅是大纲上这些,2月底前老师会继续增加10余节课程,届时会恢复原件!现在购买最划算! 3、购课后登陆csdn学院官网,在课程目录页面即可下载课件。 学完即可轻松应对工作中 85% 以上的 Linux 使用场景 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本课程【现在享受秒杀价29元】 3)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 注意: 1)现在购买至少享受70元优惠; 2)购课后添加微信itxy06,发送订单截图领取300元编程礼包。 --------------------------------------------------------------- 这门课程,绝对不会让你觉得亏! 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+300元编程礼包。   人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。   在这门课中,我们保证你能收获到这些 1)快速掌握 Linux 常用命令及配置 2)Linux核心知识点 3) 文件、进程、磁盘、用户管理,以及网络工具命令、文件传输等 4)Vi/Vim编辑器用法  

    5479 人正在学习 去看看 严宇

ctrl+a linux命令最前面

ctrl+e linux命令最后面

ctrl+l 清除屏幕内容(等同于clear)

ctrl+u 清除剪切光标之前的内容

ctrl+k 剪切清除光标之后的内容

ctrl+y 黏贴刚才删除的字符

ctrl+r 在历史命令中查找

$ 显示系统最后一个参数

2016-11-12 00:59:13 r610492664 阅读数 155
  • 玩转Linux:常用命令实例指南

    本课程以简洁易懂的语言手把手教你系统掌握日常所需的Linux知识,每个知识点都会配合案例实战让你融汇贯通 。课程通俗易懂,简洁流畅,适合0基础以及对Linux掌握不熟练的人学习; 注意: 1、本课程本月原价99元,截止2月22日前仅需29元!购课就送5门价值300元的编程课! 2、课程内容不仅是大纲上这些,2月底前老师会继续增加10余节课程,届时会恢复原件!现在购买最划算! 3、购课后登陆csdn学院官网,在课程目录页面即可下载课件。 学完即可轻松应对工作中 85% 以上的 Linux 使用场景 【限时福利】 1)购课后按提示添加小助手,进答疑群,还可获得价值300元的编程大礼包! 2)本课程【现在享受秒杀价29元】 3)本月购买此套餐加入老师答疑交流群,可参加老师的免费分享活动,学习最新技术项目经验。 注意: 1)现在购买至少享受70元优惠; 2)购课后添加微信itxy06,发送订单截图领取300元编程礼包。 --------------------------------------------------------------- 这门课程,绝对不会让你觉得亏! 29元=掌握Linux必修知识+社群答疑+讲师社群分享会+300元编程礼包。   人工智能、物联网、大数据时代,Linux正有着一统天下的趋势,几乎每个程序员岗位,都要求掌握Linux。本课程零基础也能轻松入门。   在这门课中,我们保证你能收获到这些 1)快速掌握 Linux 常用命令及配置 2)Linux核心知识点 3) 文件、进程、磁盘、用户管理,以及网络工具命令、文件传输等 4)Vi/Vim编辑器用法  

    5479 人正在学习 去看看 严宇
 

历史相关命令

!!:执行上一条命令
!num:执行历史命令中第num条命令
!-num:执行历史命令中倒数第num条命令
!?string?:执行最近一条包含有string字符串的命令
Ctrl+r:搜索上一条匹配的命令
!$:代表上一个命令的最后一个字符串
Esc+.:显示上一个命令的最后一个字符串
 
 

移动相关命令

Ctrl+a:将光标移到行首
Ctrl+e:将光标移到行尾
Ctrl+右箭头:向右移动一个单词
Ctrl+左箭头:向左移动一个单词
Ctrl+f:向右移动一个字符,相当于按向右按键
Ctrl+b:向左移动一个字符,相当于按向左按键
Esc+f:移动到当前单词的尾部
Esc+b:移动到当前单词的首部
 
 
 

编辑相关的命令

tab:补全命令
Ctrl+c:中断当前的操作(最常用)
Ctrl+u:剪切光标所在位置到行首间的字符,如果光标在最后,相当于剪切当前命令行
Ctrl+k:剪切光标所在位置到行尾间的字符,如果光标在行首,相当于剪切当前命令行
Ctrl+y:粘贴之前被剪切的字符串
Ctrl+d:删除光标处所在的字符
Ctrl+h:删除光标处所在的前一个字符
Ctrl+w:删除光标前的单词
 
 

操作相关命令

Ctrl+d:注销当前shell并关闭
clear:清屏
exit:退出当前shell
Ctrl+l:清屏操作(将当前的显示全部清除,保留当前行命令)
Ctrl+s: 挂起当前shell
Ctrl+q:重新启动挂起的shell

linux下终端快捷键

阅读数 1881

没有更多推荐了,返回首页