内容说明:Linux终端命令行/MacOS命令行 Terminal command。
目录:
一,基本说明
二,常用命令行
2-1:linux快捷键
2-2:vi和vim三种模式。
2-3 :linux文件管理命令(1)
2-4 :linux文件管理命令(2)
2-5:linux磁盘管理命令
2-6:linux其他管理命令
2-7:远程操作
2-8: 编程操作
2-9:进程操作
2-10:时间操作
2-11:其它命令
三,英语词汇
四,参考资料
一,基本说明
命令行格式:电脑用户名:当前路径 账户名$ command line
如:
freevision:desktop freevision$ ls
freevision 电脑用户名
desktop 当前路径(桌面,desktop当前的绝对路径为: /Users/freevision/desktop)
freevision 账户名
$ ls 命令行
注意:
1,在 Unix系统中是区别大小写字符的,A.txt 不等于 a.txt。
2,Unix文件系统,所有文件都挂在跟目录 “ / ” 下面,根目录标志“ / ”不是可有可无的。
3,command line 要在英文输入法状态才有效;
二,常用命令行
2.1:linux快捷键
遍历历史记录
$ History //执行过的指令历史记录
$ ctrl+p //上一条指令
$ ctrl+n //下一条指令
▲和▼ //切换上一条,下一条指令。
光标移动
$ ctrl+b //逐个左移
$ ctrl+f //逐个右移
$ :ctrl+a //直接移动到首部,最左侧
$ :ctrl+e //直接移动到尾部,最右侧
终止正在执行的指令。
$ :control + C
其他:
命令或目录补齐: Tab
退出阅读模式: q
2.2:vi和vim三种模式。
vi 命令,文件操作的指令;
1.命令模式:移动光标 (打开即为命令模式,编辑转改下,按 Esc 由编辑模式退回命令模式/一般模式;)
2.插入模式:编辑文档 。(命令模式状态下,按 a、i、o 就由一般模式进入编辑模式;)
3.末行模式:保存退出。(命令模式状态下 shift+: 进入末行模式)
命令模式常用操作
yy //yy 复制光标所在行;nyy 复制光标以下n行,包含光标所在行。
num yy //拷贝num行
p //将剪切的内容粘贴到光标所在行;小写 'p' 粘贴到光标行的下一行,大写 'P' 粘贴到上一行。
u / undo //撤销上一步操作 ;
ctrl+r / redo //恢复上一步操作;
gg //光标定位 光标移动到文件首行
shift+g //光标定位到最后一行
num shift+g //光标定位到第num行
dd //删除光标所在行;
2,删除 dd 删除光标所在行 在字符到行尾 dG 删到尾行G 到文件尾行 ^ 到光标所在行行首 $ 到光标所在行行尾 行号+G 到第几行行号+dd 删除光标及光标以下n行 d^ 删除光标所在字符到行首 d$ 删除光标所 dgg 删到首行
set:命令
文件内容显示行号
$ :set nu
文件内容不显示行号
$ :set nonu
dd:剪切命令(粘贴命令 $ p );
文件在非编辑状态,$ dd 剪切光标所在的那一行;
$ dd
文件在非 编辑状态,$ 5dd 并剪切光标下的5行,包含光标所在行;
$ 5dd
yy:命令
文件在非编辑状态下,yy 进入编辑模式,并复制光标所在行的内容;
$ yy
复制5行:5yy,包含光标所在行;
$ 5yy
文件在 非 编辑状态下,粘贴复制的内容;
$ p
ctrl+r 恢复操作 (redo) xxxxxx
将光标定位在文件第一行
$ gg
将光标定位到文件最后一行
$ shift+g
将光标定位在文件的第num行
$ num shift+g
cut:显示文件每行中的某些域,输入错误或提示: illegal list value; xxxxxxxxxxxxxxxxxxx
$ cut -f1,7 -d: /etc/passwd
colrm:从标准输入中删除若干列 xxxxxxxxxxxxxx
$ colrm 8 20 file2
paste:横向连接文件, file1 ,file2 两个文件会被分两列打印出来,file1 左边,file2右边;
$ paste file1 file2
diff:比较并显示两个文件的差异;
$ diff file1 file2
sed:非交互方式流编辑器 xxxxxxx
$ sed “s/red/green/g” filename
awk:在文件中查找并处理模式 xxxxxxxxx
$ awk ‘{print 111}’ filename
sort:排序或归并文件 xxxxxxxx
$ sort -d -f -u file1
uniq:去掉文件中的重复行; file1为原文件,去重后的内容会存储到file2(file2内的原有内容将会被删除,如果没有file2文件,将会创建);
$ uniq file1 file2
comm:显示两有序文件的公共和非公共行 xxxxx
$ comm file1 file2
插入模式
命令模式状态下进入插入模式:按一下键盘上的 a 或 i 或 o 或 shift + a 或 shift + i 或 shift + o 即开始编辑;
插入模式下返回到命令模式:按 esc 即退出插入模式;
打开文件;(存在就打开,不存在就先创建再打开)
$ vi a.txt
进入插入模式:按一下键盘上的 a 或 i 或 o 或 shift + a 或 shift + i 或 shift + o 即开始编辑;
a
i
0
末行模式
• 1,set nu:显示行号
• 2,退出方式:
• 3,读入文件:
:set nu 显示行号
:set nonu 隐藏行号
保存退出:
wq 强制不保存退出:q! 退出:q 另存为:w+路径 r /opt/install.log //将文件读入到当前文件中 vi 文件 文件 编辑两个文件
保存,但不退出。
$ :w
内容没有编辑,不需要保存,退出
$ :q
内容编辑了,但不保存,退出 (强制退出)
$ :q!
保存退出
$ :wq
2-3 :linux文件管理命令(1):
(cat,chmod,chown,find,less,more,mv,rm)
注意:chmod命令,chown命令只能在root权限下使用(root权限),普通用户无法使用。
cat 命令:
作用:cat 命令用于连接文件并打印,查看文件内容
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
# 以下几个命令不常用:
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I
cat 命令举例:
cat 将 textfile1 、 textfile2 里的文件内容 放置到 textfile3里面 (如果没有testfile3 会自动被创建)
cat textfile1 textfile2 > textfile3
cat testfile3 :显示文件的具体内容;
$ cat testfile3
123
456
cat -n testfile3 :显示文件的具体内容以及行号;
$ cat -n testfile3
1 123
2 456
chmod命令:
作用:Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他
人所调用。
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三 者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
以下命令不常用:
r 或4表示可读取,w或2 表示可写入,x 或1表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定 。(7:表示可读、可写、可执行)
过为可执行。
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
chmod命令举例:
所有者的权限
所有组的权限
其他权限
$ ls -ll 、$ ls -ll 、 $ ls -la 命令:查看当前目录下,所有文件读写权限:
如果直接写 $ ll 提示:-bash: ll: command not found 可以写成:$ ls -l 或 $ls -ll
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
$ ls -ll
会打印显示如下内容:
-rw-r--r-- 1 freevision staff 4 12 16 16:08 test1
-rw-r--r-- 1 freevision staff 4 12 16 16:08 test2
-rw-r--r-- 1 freevision staff 8 12 16 16:09 test3
test3 :文件名; freevision :文件的所有者; staff:文件所属组(文件所有者所在的组);
-rw-r--r--:
‘rw-’ :(前3位,不算第一个‘-’)所有者对这个文件的权限;目前权限是可读、可写、不可被执行;
‘r--’:(中间3位)所属组的权限;目前只可被读取;
‘r--’:(后3位)其他人的的权限;目前只可被读取;
chmod命令:更改文件的读写权限(可以使用数字代替)参考菜鸟
$ chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
$ chmod ug=rwx,o=x file 和 $ chmod 771 file 效果相同
$ chmod 777 test3
-rwxrwxrwx 1 freevision staff 8 12 16 16:09 test3 //所有者、所属组、其他人 都是可读、可写、可执行权限。
$ chmod ug=rwx,o=x test3
-rwxrwx--x 1 freevision staff 8 12 16 16:09 test3
$ chmod 771 file
-rwxrwx--x 1 freevision staff 8 12 16 16:09 test3
chown命令
作用:将指定文件的拥有者改为指定的用户或组
-c : 显示更改的部分的信息
-f : 忽略错误信息
-h :修复符号链接
-v : 显示详细的处理信息
-R : 处理指定目录以及其子目录下的所有文件
注意:在更改指定所有者和群组之前,新的所有者和群组必须提前创建好,头则提示没有这个用户。
举例:
将: -rwxrwx--x 1 freevision staff 8 12 16 16:09 test3 改为:-rwxrwx--x 1 freevision02 staff01 8 12 16 16:09 test3 。
$ chown freevision02 staff01 test3
chown: freevision02: illegal user name //没有 freevision02 这个用户
如果更改成功会显示如下:
-rwxrwx--x 1 freevision02 staff01 8 12 16 16:09 test3
chown:改变文件或目录的属主 xxxxxxx
$ chown newOwner fileName
find命令:
作用:用来在指定目录下查找文件。
案例
将目前目录及其子目录下所有延伸档名是 c 的文件列出来。
find . -name "*.txt“
*表示通配任意个字符 ?表示通配单个字符
举例:
# find . -name "*.txt"
输出:所有以“.txt”结尾的文件路径 如:
./wang/a.txt
./wang/e.txt
find:使用匹配表达式查找文件 xxxxxxxxxxxxxxxx
$ find . -name “*.c” -print
more 命令:
作用:命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读 。阅读使用,只能向下翻页。
-num 一次显示的行数
-d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
-s 当遇到有连续两行以上的空白行,就代换为一行的空白行
-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
注意:
翻页使用快捷键:control+f。
按q即可退出阅读模式。
$ more 分页显示 举例:
$ more test3
less命令:
作用:less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less
在查看之前不会加载整个文件。
ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏
按q即可退出阅读模式。
注意:
翻页使用快捷键:control+f。
按q即可退出阅读模式。
$ less test3
mv /move 命令:
作用:用来为文件或目录改名、或将文件或目录移入其它位置。
-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在mv操作要覆盖某已有的目标文件时不给任何指示
举例:
mv 改名字:将文件 a.txt 更名为 b.txt (即:将当前目录的文件 a.txt 移动到当前目录下,并命名为 b.txt):
$ mv a.txt b.txt
mv 移动文件:
将/Users/computername/desktop/file1/name/a.txt 路径下的 a.txt 移动到 /Users/computername/desktop/file2/name2/b.txt 路径下,并命名为 b.txt;
$ mv /Users/computername/desktop/file1/name/a.txt /Users/computername/desktop/file2/name2/b.txt
rm / remove命令
作用:用于删除一个文件或者目录。
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除
举例:
rm:remove,删除当前目录下的文件或文件夹
删除当前目录下的 name 文件:
$ rm name
$ rm -rf 强制递归删除,$ rm -rf 命令一定要慎用!!!
江湖传言的:删根跑路。
(删除当前目录下 name 文件夹 以及里面的 文件)
$ rm -rf name/
删除某路径下的文件夹/文件
$ rm -rf /Users/computer/desktop/file1/name
2-4 :linux文件管理命令
(touch,which,cp,head,tail,grep)
touch命令
作用:用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。正常情况下,对文件修改之后修改时间才会改变,否则不会改变,但可以使用touch改变;
-a 改变档案的读取时间记录。
-m 改变档案的修改时间记录。
-c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
-f 不使用,是为了与其他 unix 系统的相容性而保留。
-r 使用参考档的时间记录,与 --file 的效果一样。
-d 设定时间与日期,可以使用各种不同的格式。
-t 设定档案的时间记录,格式与 date 指令相同。
touch:在当前目录下创建文件(此处与 vi 的功能相同)
$ touch test.txt //创建文件 test.txt
$ ls -l //查看文件信息,
-rw-r--r-- 1 freevision staff 0 12 16 20:33 test.txt //看到最后操作时间 20:33
touch: 更改文件的 修改时间
$ touch test.txt //更改文件最后访问时间 为当前时间
-rw-r--r-- 1 freevision staff 0 12 16 20:35 test.txt //看到最后操作时间 20:35
which命令
• 作用:搜索某个系统命令的位置
$ which vi
/usr/bin/vi //vi命令的位置
$ which touch
/usr/bin/touch //touch命令的位置
cp命令
作用:用于复制文件或目录
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组 合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件
注意:-r:递归复制,复制文件夹的时候,需要加 -r。
举例:
cp aaa bbb 将当前目录下得aaa文件,拷贝一份,放到当前目录下,并改名为bbb
复制文件或目录到当前的没目录下 ;file1为旧的文件/目录名,file2为创建的新的 文件/目录名
$ cp file1 file2
同理:复制某路径下的目录或文件夹到另一路径下并命名为xxx;
将/Users/computername/desktop/file1/name/a.txt 路径下的 a.txt 复制到 /Users/computername/desktop/file2/name2/b.txt 路径下,并命名为 b.txt;
$ cp /Users/computername/desktop/file1/name/a.txt /Users/computername/desktop/file2/name2/b.txt
相对路径:(未验证 ......)
绝对路径:相对应根目录的全路径。
head及tail命令(文件排错用的比较多)
head命令:显示文档的前n行
tail命令:显示文档末尾n行
head举例:
查看文件的前100行:
$ head -100 filename
或
$ head -n 100 filename
查看文件的后100行,使用tail命令:
$ tail -100 filename 或 tail -n 100 filename
查看文件中间一段,如查看 第100行到第200行 ,你可以使用sed命令:
$ sed -n '100,200p' filename
截取的文件filename 的前100行存到新文件newfile.txx中
$ head -100 filename >newfile.txt
sed命令:截取、查看指定行之间的数据:
查看文件的第100行到第200行。
$ sed -n '100,200p' filename
// sed -n '开始行数,结束行数p'待截取的文件>> 保存的新文件
//截取filename 的 第100行到200行之间的数据到 新文件 newfile.txt 中。
$ sed -n '100 , 200p' filename >> newfile.txt
tail 命令:显示文件的最后几行(以下两种写法效果一样)
$ tail -n 3 test1
$ tail -3 test1
cat命令:查看文件所有内容
$ cat txet2
grep命令
作用:用于查找文件里符合条件的字符串
案例
在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行
grep test *file
查找指定进程
cat test | grep a
-e : 使用PATTERN作为模式。这可以用于指定多个搜索模式,或保护以连字符( - )开头的图案。指定字符串 做为查找文件内容的样式。
-f : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规 则样式。
‘|’:管道符,以前面命令查找的结果,作为后面查找的输入。
grep:查找符合条件的字符串
$ grep abc test*
test1:abcssjhdfsahfadsjkf
test1:asaa123eabcd1234r
test2:1234abcdef1232
$ grep abc *est1
abcssjhdfsahfadsjkf
asaa123eabcd1234r
grep:在文件中按模式查找 xxxxxxxx
$ grep “^[a-zA-Z]” filename
cat test1 的结果中 查找字符串 abcd
$ cat test1 | grep abcd
asaa123eabcd1234r
2-5:linux磁盘管理命令
(pwd,cd,df,mkdir,mount及umount,ls,history)
pwd / present work directory 命令
• 作用:显示当前工作目录,刚打开终端的时候,默认在用户目录下。
$ pwd
/Users/freevision
cd / come directory 命令
• 作用:用于切换当前工作目录至目标目录 •
cd .. 切换到上一级目录
• cd - 切换到最近一次的工作目录
• cd ~切换到当前用户的家目录
进到当前目录下的某一目录:如进入 file1 目录
$ cd file1
进到指定目录
$ cd /Users/computername/desktop/file1
回到上一个目录
$ cd ..
切换到最近一次的工作目录(注意:不是返回到上一级目录哦,是上一次/最近一次 操作的目录,最近一次操作的目录有可能是上级目录,也有可能是下级目录。)
$ cd -
回到用户目录(刚打开终端时的目录)
$ cd ~
$ cd
回到根目录
$ cd /
df命令
• 作用:用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。
• -h, --human-readable 使用人类可读的格式(预设值是不加这个选项的...)
df:显示文件系统的总空间和可用空间
使用人类可读的格式,显示磁盘使用情况。
$ df -h
Filesystem:文件系统下的磁盘名。 Size:磁盘的大小。 Used:已用大小。 Avail:空余大小
Capacity:使用百分比。 Mounted on:安装位置。
mkdir / make directory 命令
• 作用:创建目录。(注意创建文件 )
• -p 确保目录名称存在,不存在的就建一个,可以实现递归创建。
$ mkdir:在当前目录下,创建一个文件夹;如果已经创建过了会提示:File exists
$ mkdir dirname
$ mkdir -p :递归创建文件夹
$ mkdir -p a/b/c
rmdir:删除一个文件夹;未找到文件会提示:-bash: $: command not found
$ rmdir dirname
注意;递归删除文件夹(a/b/c/d) 需要 $ rm -rf filename ,慎用!
$ rm -rf a
mvdir:移动或重命名一个文件夹 xxxxxxxxxxxxxxxx
$ mvdir dir1 dir2
mount及umount命令 (未验证)
• mount作用:挂载Linux系统外的文件。(如:镜像文件)
• umount作用:用于卸除文件系统
• 案例
• 将 /dev/hda1 挂在 /mnt 之下
• mount /dev/hda1 /mnt
ls / list show命令
作用:用于显示指定工作目录下之内容
-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/“
-R 若目录下有文件,则以下之文件亦皆依序列出
显示当前目录下的文件、文件夹:
$ ls
显示当前目录下的文件、文件夹,同时显示 隐藏的文件、文件夹:
$ ls -a
查看父目录下得内容
$ ls ..
查看用户目录的内容(打开终端默认在用户目录下)
$ ls ~
显示根目录下的内容:
$ ls /
显示某一路径下的内容(类似 cd 和路径配合使用); 注意:只是显示该路径下的文件,并没有cd到这个文件目录:
$ ls /Users/freevision/desktop/zhengxiaowei
显示当前目录里的文件名称、大小、创建时间,所有者、群组的类型和权限,等详细信息:
$ ls -l //隐藏文件的详细信息 不显示
$ ls -la //同时显示隐藏文件的详细信息
显示指定目录下 的文件名称、大小、创建时间等信息
$ ls /Users/freevision/desktop/zhengxiaowei -l
history命令
• 作用:用于显示历史记录和执行过的指令命令
• 查看历史执行记录后 5 条
history:查看执行过的命令及编号
$ history
history:查看最近执行过的 5条 命令及编号
$ history 5
结果如下:
495 history
496 ls
496 ls -l
498 clear
499 history 5
history:按照执行过的编号执行命令 (参考 $ history 5 的结果)
$ !498
2-6:linux其他管理命令
(ifconfig,ping,useradd,kill,su,clear,passwd)
ifconfig命令
• 作用:用于显示或设置网络设备
ifconfig 查看网络设置
$ ifconfig
inet 192.168.0.108 netmask 0xffffff00 broadcast 192.168.0.255
inet:IP(192.168.0.108)
netmask:子网掩码 (255.255.255)
broadcast:网关(192.168.0.255)
后期添加 IP命令的操作;
ping命令
• 作用:检查网络是否连通
ping 域名
$ ping www.baidu.com
结束:control+c
ping ip地址。如果需要验证,两台或多台虚拟机之间是否通信相同,可以ping他们的IP地址。
$ ping 192.168.10.106
useradd命令 (有待验证)
• 作用:建立用户帐号
• -c<备注> 加上备注文字。备注文字会保存在passwd的备注栏位中。 • -d<登入目录> 指定用户登入时的家目录。
• -D 变更预设值.
• -e<有效期限> 指定帐号的有效期限。
• -f<缓冲天数> 指定在密码过期后多少天即关闭该帐号。
• -g<群组> 指定用户所属的群组。
• -G<群组> 指定用户所属的附加群组。
• -m 自动建立用户的登录目录。
• -M 不要自动建立用户的登入目录。
• -n 取消建立以用户名称为名的群组.
• -r 建立系统帐号。
-u<uid> 指定用户ID。
useradd : 添加先的用户
$ useradd -u 600 -d /usr/testuser3/ -g users -m kkb
'-u':新建用户的所属组的Gid的, Gid为0:代表为超级用户组。Gid:0~499 :系统用户组。Gid:500 ~ 2的32次方,普通用户组。
'-d':创建用户的家目录,
'-g':指定所属组是哪一个。
'-m':如果没有这个用户,就创建。
'kkb':需要创建的用户的用户名。
查看创建的用户:
$ cat /etc/passwd/
最下面看到新建用户的信息:
kkb:x:600:100:/usr/testuser3:/bin/bash
kkb 用户名称 ; x 密码占位符; 600 Gid; /usr/testuser3 家目录; /bin/bash 用户类型,bin下的bash。
passwd命令
作用:更改使用者的密码
-d 删除密码
-f 强制执行
-k 更新只能发送在过期之后
-l 停止账号使用
-S 显示密码信息
-u 启用已被停止的账户
-x 设置密码的有效期
-g 修改群组密码
-i 过期后停止用户账号
安全操作:
passwd:修改用户密码;要求先输入旧代码,再输入两次新代码;
$ passwd
umask:定义创建文件的权限掩码 xxxxx
$ umask 027
chgrp:改变文件或目录的所属组 xxxxxx
$ chgrp staff filename
xlock:给终端上锁 xxxxxxx
$ xlock -remote
kill命令
• 作用:杀死执行中的程序或工作
-l <信息编号> 若不加<信息编号>选项,则-l参数会列出全部的信息名称。
-s <信息名称或编号> 指定要送出的信息。
$ ps 查看当前有哪些进程
$ ps -ef
kill 杀死进程 (-9 :强制杀死进程),杀死之后再查看这个进程就不存在了。
$ kill -9 36525 //36525 为 PID
su命令
作用:变更为其他使用者的身份,除 root 外,需要键入该使用者的密码
-c command 或 --command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使 用者
su 切换当前用户(root用户/超级管理员用户 切换到别的用户,即可实现直接切换。否则会提示输入新用户的 密码,切换到管理员用户也需要输入管理员密码)
$ su -kkb
$ su -root
clear命令
• 作用:用于清除屏幕
clear:清除屏幕或窗口内容;或者使用组合键 control + L ;
$ clear
2-7:远程操作
( linux免秘钥操作(ssh),远程拷贝(scp),解压缩(tar) )
ssh 命令:
1. 创建秘钥ssh-keygen -t rsa
2. 家目录下会生成私钥(id_rsa)和公钥(id_rsa.pub)
3. 将公钥拷贝给目标服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub 目标服务器IP 注意:操作前先启动ssh服务,systemctl start sshd.service
注意:虚拟机之间必须相互ping通,而不是单方面ping通。
登录虚拟机:如果没有设置免秘钥登录,登录的时候就会提示输入登录密码。登录之前先ping通。
$ ssh root @192.268.241.100
root:用户名
192.268.241.100:IP地址
退出当前的虚拟机:
$ exit
设置免秘钥登录:大数据集群之间会进行频繁的通讯,所以要设置免秘钥登录,创建免密要登录的时候需要输入一次密码(目标服务器/虚拟机 root 用户的密码);
设置秘钥
$ ssh-keygen -t rsa
将公钥拷贝给目标服务器/虚拟机,需要加上服务器的IP地址。
$ ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.241.100
~/.ssh/id_rsa.pub 文件位置,'~' 代表家目录;
检验(这一次就不会提示密码了,直接就登陆了服务器/虚拟机了),成功的话即设置完成。
$ ssh root @192.268.241.100
tar解压缩
tar
作用:解压缩后缀名为tar的压缩包
-f<备份文件>或--file=<备份文件> 指定备份文件
-v或--verbose 显示指令执行过程
-x或--extract或--get 从备份文件中还原文件
-z或--gzip或--ungzip 通过gzip指令处理备份文件。(否定前缀的意思)
-C<目的目录>或--directory=<目的目录> 切换到指定的目录。(重定向的意思)
tar -zxvf XXXX -C /usr/
压缩文件解压到指定的位置。(将一个demo解压到桌面 abc 文件夹下,将瞬间完成。)
$ tar -zxvf SJVideoPlayer-master.zip -C /Users/freevision/desktop/abc
远程拷贝scp
• scp命令用于Linux之间复制文件和目录(两台虚拟机之间)
-r: 递归复制整个目录。(递归:将这个文件夹下所有的文件夹、文件全都copy走。)
scp -r 本地路径 目标路径
注意:如果没有设置买你要操作,也是需要输入密码的。
将文件copy到另一台机器上;(成功之后去目标服务器查看是否成功。)
$ scp -r /Users/freevision/desktop/abc/SJVideoPlayer-master root@192.168.241.100:/tmp
SJVideoPlayer 被copy的文件
root@192.168.241.100:/tmp 目标服务器的IP地址和位置。
2-8 编程操作
make:维护可执行程序的最新版本 xxxx
$ make
dbx:命令行界面调试工具 xxxxxxxx
$ dbx a.out
xde:图形用户界面调试工具 xxxxx
$ xde a.out
2-9 进程操作
ps:显示进程当前状态
$ ps u
kill:终止进程
$ kill -9 30142
nice:改变待执行命令的优先级 xxxxxx
$ nice cc -c *.c
renice:改变已运行进程的优先级 xxxxx
$ renice +20 32768
2-10: 时间操作
(date,cal,time)
date:显示系统的当前日期和时间
$ date
cal:显示日历
$ cal 8 1996
time:统计程序的执行时间 xxx 何用?
$ time a.out
2-11:其它命令
(Wc ,uname,env,who,whoami,dircmp,pg,od,ln,file,open,nl)
Wc命令
Wc(word count) 作用:用于计算字数
wc --help : 在线帮助。
-c:--bytes或--chars 只显示Bytes数(统计字节数)。
-l:--lines 统计行数。
-L:文件里最长的那一行是多少个字。
-w:--words 只显示字数。
wc --version :显示版本信息
$ wc -l ods_fight_power.txt
28610600 ods_fight_power.txt //文件ods_fight_power.txt中一共 28610600 行。
$ wc -lL ods_fight_power.txt
28610600 130 ods_fight_power.txt //文本有28610600 字节,最长的一行有130字节。
uname:显示操作系统的有关信息
$ uname -a
env:显示当前所有设置过的环境变量
$ env
who:列出当前登录的所有用户
$ who
whoami:显示当前正进行操作的用户名
$ whoami
tty:显示终端或伪终端的名称
$ tty
stty:显示或重置控制键定义
$ stty -a
du:查询磁盘使用情况 ???
$ du -k subdir
w:显示当前系统活动的总信息
$ w
dircmp:比较两个目录的内容 xxxxxxxxxxx
$ dircmp dir1 dir2
pg分页格式化显示文件内容 xxxxxxxxxxxxxxxxx
$ pg filename
od:显示非文本文件的内容 XXXXXXXXXXX
$ od -c filename
ln:联接文件;file2 为新文件的名称;file2 内存指向 file1的内存,本质上是file1的副本;
$ ln -s file1 file2
file:显示文件类型
$ file filename
open:使用默认的程序打开文件或目录;
$ open filename
nl:给文件加上行号;file1的每一行加上行号存储到file2,注意:file1内容不变;
$ nl file1 >file2
三,英语词汇
Terminal 》 终端
command line 》 命令行
administrators 》 管理员
script 》 脚本
console 》 控制台
Command Name、Options、Arguments、Extras 》命令名、选项、参数、附加内容
mkdir: dirname: File exists 》 文件已经存在了(没有再次创建)
rm: dirname: is a directory 》 dirname 是个目录;
What manual page do you want? 》 想要哪一页的说明手册
四,参考资料
其他参考资料:
mac上的终端bash命令(一) Bourne-Again Shell简介
码字不易,欢迎点赞!
码字不易,欢迎点赞!
码字不易,欢迎点赞!
独上高楼,望尽天涯路!