linux常用命令练习.docx
- 文档编号:8072652
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:12
- 大小:23.66KB
linux常用命令练习.docx
《linux常用命令练习.docx》由会员分享,可在线阅读,更多相关《linux常用命令练习.docx(12页珍藏版)》请在冰豆网上搜索。
linux常用命令练习
linux常用命令练习
1.1登录和退出
Linux启动后,给出login命令,等待用户登录。
Login:
<输入用户名>
Password:
<输入密码>
如果是正确的用户名和密码,那么你就会进入Linux的外壳,外壳给出命令提示符,等待
你输入命令(不要随意以root身份登录,以避免对系统造成意外的破坏)。
使用logout命令退出外壳。
1.2Linux系统的外壳
外壳是一种命令解释器,它提供了用户和操作系统之间的交互接口。
外壳是面向命令行的,而XWindow则是图形界面。
你在命令行输入命令,外壳进行解释,然后送往操作系统执行。
外壳可以执行Linux的系统内部命令,也可以执行应用程序。
你还可以利用外壳编程,执行复杂的命令程序。
Linux提供几种外壳程序以供选择。
常用的有Bourne外壳(bsh)、C外壳(csh)和Korn外壳(ksh)。
各个外壳都能提供基本的功能,又有其各自的特点。
Bourne外壳是由StevenBourne编写的,是UNIX的缺省外壳。
Bourne外壳的外壳编程能力很强。
但它不能处理命令的用户交互特征。
bash是Bourne外壳的增强版。
C外壳是由加利福尼亚大学伯克利分校的BillJoy编写的。
它能提供Bourne外壳所不能处理的用户交互特征,如命令补全、命令别名、历史命令替换等。
很多人认为,C外壳的编程能力不如Bourne外壳,但它的语法和C语言类似,所以C程序员将发现C外壳很顺手。
tcsh是C外壳的增强版本和C外壳完全兼容。
Korn外壳是由DaveKorn编写的。
Korn外壳融合了C外壳和Bourne外壳的优点,并和Bourne外壳完全兼容。
Korn外壳的效率很高,其命令交互界面和编程交互界面都很不错。
PublicDomainKorn外壳(pdksh)是Korn外壳的增强版。
bash是大多数Linux系统的缺省外壳。
它克服了Bourne外壳的缺点,又和Bourne外壳完全兼容。
Bash有以下的特点:
补全命令行。
当你在bash命令提示符下输入命令或程序名时,你不必输全命令或程序
名,按Tab键,bash将自动补全命令或程序名。
通配符。
在bash下可以使用通配符*和?
。
*可以替代多个字符,而?
则替代一个字符。
历史命令。
bash能自动跟踪你每次输入的命令,并把输入的命令保存在历史列表缓冲区。
缓冲区的大小由HISTSIZE变量控制。
当你每次登录后,home目录下的.bash_history文
件将初始化你的历史列表缓冲区。
你也能通过history和fc命令执行、编辑历史命令。
别名。
在bash下,可用alias和unalias命令给命令或可执行程序起别名和清除别名。
这样你可以用自己习惯的方式输入命令。
输入/输出重定向。
输入重定向用于改变命令的输入,输出重定向用于改变命令的输出。
输出重定向更为常用,它经常用于将命令的结果输入到文件中,而不是屏幕上。
输入重
定向的命令是<,输出重定向的命令是>。
管道。
管道用于将一系列的命令连接起来。
也就是把前面的命令的输出作为后面的命
令的输入。
管道的命令是|。
提示符。
bash有两级提示符。
第一级提示符就是你登录外壳时见到的,缺省为$。
你可
以通过重新给ps1变量赋值来改变第一级提示符。
当bash需要进一步提示以便补全命令时,会显示第二级提示符。
第二级提示符缺省为>,你可以通过重新给ps2变量赋值来改变第二级提示符。
一些特殊意义的字符也可以加入提示符赋值中。
作业控制。
作业控制是指在一个作业执行过程中,控制执行的状态。
你可以挂起一个
正在执行的进程,并在以后恢复该进程的执行。
按下Ctrl+Z挂起正在执行的进程,用bg
命令使进程恢复在后台执行,用fg命令使进程恢复在前台执行。
1.3外壳的常用命令
下面简单介绍外壳下的常用命令。
1.3.1更改帐号密码
语法:
passwd
Oldpassword:
<输入旧密码>
Newpassword:
<输入新密码(最好为6~8字,英文字母与数字混合)>
Retypenewpassword:
<再输入一次密码>
1.3.2联机帮助
语法:
man命令
例如:
manls
1.3.3远程登录
语法:
rlogin主机名[-1用户名]
例如:
rlogindoc远程登录到工作站doc中。
rlogindoc-luser使用user帐号登录到工作站doc中。
语法:
telnet主机名或telnetIP地址
例如:
telnetdoc
telnet140.109.20.251
1.3.4文件或目录处理
列出文件或目录下的文件名。
语法:
ls[-atFlgR][name]
name:
文件名或目录名。
例如:
ls
ls-a
ls-t
ls-F
可执行文件,以@结尾表示为符号连接。
ls-l
ls-lg
ls-R
列出目录下所有文件的权限、所有者、文件大小、修改时间及名称。
同上,并显示出文件的所有者工作组名。
显示出目录下以及其所有子目录的文件名。
1.3.5改变工作目录
语法:
cd[name]
name:
目录名、路径或目录缩写。
例如:
改变目录位置至用户登录时的工作目录。
改变目录位置至dir1目录下。
改变目录位置至用户的工作目录。
改变目录位置至当前目录的父目录。
改变目录位置至相对路径user的目录下。
改变目录位置至绝对路径的目录位置下。
改变目录位置至用户登录时的工作目录。
cd
cddir1
cd~user
cd..
cd../user
cd/../..
cd~
列出目前目录下的文件名。
列出包括以.开始的隐藏文件的所有文件名。
依照文件最后修改时间的顺序列出文件名。
列出当前目录下的文件名及其类型。
以/结尾表示为目录名,以*结尾表示为
将文件file1复制成file2。
将文件file1复制到目录dir1下,文件名仍为file1。
将目录/tmp下的文件file1复制到当前目录下,文件名仍为file1。
将目录/tmp下的文件file1复制到当前目录下,文件名为file2。
复制整个目录。
1.3.6复制文件
语法:
cp[-r]源地址目的地址
例如:
cpfile1file2
cpfile1dir1
cp/tmp/file1.
cp/tmp/file1file2
cp-rdir1dir2
1.3.7移动或更改文件、目录名称
语法:
mv源地址目的地址
例如:
将文件file1更名为file2。
mvfile1file2
将文件file1移到目录dir1下,文件名仍为file1。
将目录dir1更改为目录dir2。
mvfile1dir1
mvdir1dir2
1.3.8建立新目录
语法:
mkdir目录名
拷贝文件或目录至远程工作站
例如:
mkdirdir1建立一新目录dir1。
1.3.9删除目录
语法:
rmdir目录名或rm目录名
例如:
rmdirdir1删除目录dir1,但dir1下必须没有文件存在,否则无法删除。
rm-rdir1删除目录dir1及其子目录下所有文件。
1.3.10删除文件
语法:
rm文件名
例如:
删除文件名为file1的文件。
删除文件名中有五个字符且前四个字符为file的所有文件。
删除文件名中以f为字首的所有文件。
rmfile1
rmfile?
rmf*
1.3.11列出当前所在的目录位置
语法:
pwd
1.3.12查看文件内容
语法:
cat文件名
例如:
以连续显示方式,查看文件名file1的内容。
catfile1
1.3.13分页查看文件内容
语法:
more文件名或cat文件名|more
例如:
以分页方式查看文件名file1的内容。
以分页方式查看文件名file1的内容。
morefile1
catfile1|more
1.3.14查看目录所占磁盘容量
语法:
du[-s]目录
例如:
显示目录dir1的总容量及其子目录的容量(以KB为单位)。
dudir1
du-sdir1显示目录dir1的总容量。
1.3.15文件传输
语法:
rcp[-r]源地址主机名:
目的地址
源地址文件名、目录名或路径。
主机名工作站名。
目的地址路径名称。
例如:
rcpfile1doc:
/home/user将文件file1拷贝到工作站doc路径/home/user下。
rcp-rdir1doc:
/home/user将目录dir1拷贝到工作站doc路径/home/user下。
2.自远程工作站,拷贝文件或目录
语法:
rcp[-r]主机名:
源地址目的地址
主机名工作站名。
源地址路径名。
目的地址、文件名、目录名或路径。
例如:
rcpdoc:
/home/user/file1file2将工作站doc路径/home/user下的目录dir1,拷贝到当前工
作站的目录下,目录名仍为dir1。
rcp-rdoc:
/home/user/dir1.将工作站doc路径/home/user下的目录dir1,拷贝到当前工
作站的目录下,目录名仍为dir1。
3.本地工作站与远程工作站之间的文件传输
必须拥有远程工作站的帐号及密码,才可进行传输工作。
语法:
ftp主机名或ftpip地址
例如:
与远程工作站doc之间进行文件传输。
列出ftp文件传输时可使用的命令。
列出本地工作站当前目录下的所有文件名。
列出本地工作站当前所在的目录位置。
列出远程工作站当前目录下的所有文件名。
列出远程工作站当前目录下的所有文件名。
分页列出远程工作站当前目录下的所有文件名。
列出远程工作站当前所在的目录位置。
更改远程工作站的工作目录位置至dir1之下。
将远程工作站的文件file1拷贝到本地工作站中。
将本地工作站的文件file2拷贝到远程工作站中。
将远程工作站中扩展文件名为c的所有文件拷贝到本地工作站中。
将本地工作站中扩展文件名为txt的所有文件拷贝到远程工作站中。
切换交互式指令(使用mput/mget时不是每个文件皆询问yes/no)。
结束ftp工作。
结束ftp工作。
ftpdoc
Name(doc:
user-name):
<输入帐号>
Password(doc:
user-password):
<输入密码>
ftp>help
ftp>!
ls
ftp>!
pwd
ftp>ls
ftp>dir
ftp>dir.|more
ftp>pwd
ftp>cddir1
ftp>getfile1
ftp>putfile2
ftp>mget*.c
ftp>mput*.txt
ftp>prompt
ftp>quit
ftp>bye
注意从PC与工作站间的文件传输也可透过在PC端的FTP指令进行文件传输,指令用
法与上述指令大致相同。
1.3.16文件权限的设定
1.改变文件或目录的读、写、执行权限
语法:
chmod[-R]modename
name:
文件名或目录名。
chmod755dir1
有者可做修改。
mode:
3个8位数字或rwx的组合。
r-read(读),w-write(写),x-execute(执行),u-user(当前用
户),g-group(组),o-other(其他用户)。
例如:
对于目录dir1,设定成任何使用者皆有读取及执行的权利,但只有所
对于文件file1,设定只有所有者可以读、写和执行的权利。
chmod700file1
chmodu+xfile2对于文件file2,增加当前用户可以执行的权利。
chmodg+xfile3对于文件file3,增加工作组使用者可执行的权利。
对于文件file4,删除其他使用者可读取的权利。
chmodo-rfile4
2.改变文件或目录的所有权
chownuserfile1
语法:
chown[-R]用户名name
name:
文件名或目录名。
例如:
将文件file1改为用户user所有。
chown-Ruserdir1将目录dir1及其子目录下面的所有文件改为用户user所有。
1.3.17检查自己所属的工作组名称
语法:
groups
1.3.18改变文件或目录工作组所有权
chgrpvlsifile1
语法:
chgrp[-R]工作组名name
name:
文件名或目录名
例如:
将文件file1的工作组所有权改为vlsi工作组所有。
chgrp-Rimagedir1将目录dir1及其子目录下面的所有文件,改为image工作组所有。
1.3.19改变文件或目录的最后修改时间
语法:
touchname
name:
文件名或目录名。
1.3.20文件的链接
同一文件,可拥有一个以上的名称,也就是把一个文件进行链接。
语法:
ln老文件名新文件名
例如:
lnfile1file2将文件file2链接至文件file1。
语法:
ln-s老文件名新文件名
例如:
ln-sfile3file4将文件file4链接至文件file3。
1.3.21文件中字符串的查寻
语法:
grepstringfile
例如:
grepabcfile1寻找文件file1中包含字符串abc所在行的文本内容。
显示命令的路径。
显示命令的路径,及使用者所定义的别名。
显示命令功能的摘要。
1.3.22查寻文件或命令的路径
语法:
whereiscommand
语法:
whichcommand
语法:
whatiscommand
语法:
findsearch-path-namefilename-print搜寻指定路径下某文件的路径。
例如:
find/-namefile1-print自根目录下寻找文件file1的路径。
1.3.23比较文件或目录的内容
语法:
diff[-r]name1name2
name1name2:
可同时为文件名或目录名。
例如:
比较文件file1与file2内各行的不同之处。
比较目录dir1与dir2内各文件的不同之处。
difffile1file2
diff-rdir1dir2
1.3.24文件打印输出
用户可用.login文件中的setenvPRINTER来设定打印机名。
例如:
setenvPRINTERsp设定自sp打印机打印资料。
1.3.25一般文件的打印
语法:
lpr[-P打印机名]文件名
例如:
lprfile1或lpr-Pspfile1自sp打印机打印文件file1。
语法:
enscript[-P打印机名]文件名
例如:
enscriptfile3或enscript-Pspfile3自sp打印机打印文件file3。
1.3.26troff文件的打印
语法:
ptroff[-P打印机名][-man][-ms]文件名
例如:
ptroff-Psp-man/usr/man/man1/lpr1以troff格式,自sp打印机打印lpr1命令的使用说明。
1.3.27打印机控制命令
1.检查打印机状态、打印作业顺序号和用户名
语法:
lpq[-P打印机名]
例如:
lpq或lpq-Psp检查sp打印机的状态。
2.删除打印机内的打印作业(用户仅可删除自己的打印作业)
语法:
lprm[-P打印机名]用户名或作业编号
例如:
lprmuser或lprm-Pspuser删除sp打印机中用户user的打印作业,此时用户名必须为user。
lprm-Psp456删除sp打印机上编号为456的打印作业。
1.3.28进程控制
1.查看系统中的进程
语法:
ps[-aux]
例如:
ps或ps-x查看系统中,属于自己的进程。
查看系统中,所有用户的进程。
查看系统中,包含系统内部的及所有用户的进程。
ps-au
ps-aux
2.结束或终止进程
语法:
kill[-9]PID
PID:
利用ps命令所查出的进程号。
例如:
kill456或kill-9456终止进程号为456的进程。
3.在后台执行进程的方式
语法:
命令&
例如:
ccfile1.c&将编译file1.c文件的工作置于后台执行。
语法:
按下Control+Z键,暂停正在执行的进程。
键入bg命令,将暂停的进程置于后台继
续执行。
例如:
ccfile2.c
^Z
Stopped
bg
4.查看正在后台中执行的进程
语法:
jobs
5.结束或终止后台中的进程
语法:
kill%n
n:
利用jobs命令查看出的后台作业号
例如:
终止在后台中的第一个进程。
终止在后台中的第二个进程。
kill%
kill%2
1.3.29外壳变量
1.查看外壳变量的设定值
语法:
set
语法:
echo$变量名
2.设定外壳变量
语法:
setvar=value
例如:
setterm=vt100设定外壳变量term为VT100型终端。
3.删除外壳变量
语法:
unsetvar
例如:
unsetPRINTER删除外壳变量PRINTER的设定值。
查看所有环境变量的设定值。
显示指定的环境变量NAME的设定值。
2.3.30环境变量
1.查看环境变量的设定值
语法:
setenv
语法:
echo$NAME
例如:
echo$PRINTER显示环境变量PRINTER的设定值。
2.设定环境变量
语法:
setenvNAMEword
例如:
setenvPRINTERsp设定环境变量PRINTER为sp。
3.删除环境变量
语法:
unsetenvNAME
例如:
unsetenvPRINTER删除环境变量PRINTER的设定值。
2.3.31别名
1.查看所定义的命令的别名
语法:
alias
语法:
aliasname
例如:
aliasdir查看别名dir所定义的命令。
ls-atl
2.定义命令的别名
语法:
aliasname‘commandline’
例如:
aliasdir‘ls-l’
查看自己目前定义的所有命令,及所对应的别名。
查看指定的name命令的别名。
将命令ls-l定义别名为dir。
3.删除所定义的别名
语法:
unaliasname
例如:
unaliasdir删除别名dir的定义。
unalias*删除所有别名的设定。
2.3.32历史命令
1.设定命令记录表的长度
语法:
sethistory=n
例如:
sethistory=40设定命令记录表的长度为40(可记录执行过的前面40个命令)。
2.查看命令记录表的内容
语法:
history
3.使用命令记录表
重复前面执行过的以string为起始字符串的命令。
重复前面执行过的以cat为起始字符串的命令。
语法:
!
!
重复执行前一个命令。
语法:
!
n
n:
命令记录表的命令编号。
语法:
!
string
例如:
!
cat
4.显示前一个命令的内容
语法:
!
!
:
p
5.更改前一个命令的内容并执行
行。
find.-namefile1.c-print
^file1.c^core
find.-namecore-print
语法:
^oldstring^newstring将前一个命令中oldstring的部份改成newstring并执
2.3.33文件的压缩
1.压缩文件
语法:
compress文件名
语法:
compressdir目录名
2.解压缩文件
语法:
uncompress文件名
语法:
uncompressdir目录名
2.3.34管道命令的使用
语法:
命令1|命令2将命令1的执行结果送到命令2,做为命令2的输入。
例如:
ls-Rl|more以分页方式列出当前目录及其子目录下所有文件的名称。
catfile1|more以分页方式列出文件file1的内容。
将文件做为命令的输入。
2.3.35输入/输出控制
1.标准输入的控制
语法:
命令<文件
例如:
mail-s“mailtest” wesongzhou@ 题名称为mailtest,送给收信人。 2.标准输出的控制 语法: 命令>文件将命令的执行结果送至指定的文件中。 例如: ls-l>list将执行“ls-l”命令的结果写入文件list中。 语法: 命令>! 文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。 例如: ls-lg>! list将执行“ls-lg”命令的结果覆盖写入文件list中。 语法: 命令>&文件将命令执行时屏幕上所产生的任何信息写入指定的文件中。 例如: ccfile1.c>&error将编译file1.c文件时所产生的任何信息写入文件error中。 语法: 命令>>文件将命令执行的结果附加到指定的文件中。 例如: ls-lag>>list将执行“ls-lag”命令的结果附加到文件list中。 语法: 命令>>&文件将命令执行时屏幕上所产生的任何信息附加到指定的文件中。 例如: ccfile2.c>>&error将编译file2.c文件时屏幕所产生的任何信息附加到文件error中。 2.3.36查看系统中的用户 语法: who或finger 语法: w 语法: finge
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 常用命令 练习