Linux常用基本命令及应用技巧1

Linux常用基本命令及应用技巧1
2007-05-16 16:42
新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握。 

  由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握。本章我们就来介绍Linux的常用基本命令。 

首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中“系统管理员”拥有最高权限。 

在启动Linux后屏幕出现如下界面显示: 

…… 

Red Hat Linux release 9 (Shrike) 

Kernel 2.4.20.8 on an i686 

login: 

输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个“#”提示 符时,表明你登录成功! 

屏幕显示Linux提示符: [root@localhost root]#_ 

这里需要说明的是“Red Hat Linux release 9 (Shrike)”表示当前使用的操作系统的名称及版本。“2.4.20.8”表示Linux操作系统的核心版本编号。“i686”表示该台电脑使用的CPU的等级。 

下面我们来介绍常用基本命令 

一,注销,关机,重启 

注销系统的logout命令 

1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: 

[root@localhost root]#logout 

Red Hat Linuxrelease 9(Shike) 

Kernel 2.4.20.8 on an i686 

Login: ← 回到登陆的画面 

2,关机或重新启动的shutdown命令 

Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。 

参数说明如下: 

 立即关机:-h 参数让系统立即关机。范例如下: 

[root@localhost root]#shutdown –h now ← 要求系统立即关机

 指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下: 

[root@localhost root]#shutdown now ← 立刻关机 

[root@localhost root]#shutdown +5 ← 5分钟后关机 

[root@localhost root]#shutdown 10:30 ← 在10:30时关机 

 关机后自动重启:-r 参数设置关机后重新启动。范例如下: 

[root@localhost root]#shutdown -r now ← 立刻关闭系统并重启 

[root@localhost root]#shutdown -r 23:59 ← 指定在23:59时重启动 

3,重新启动计算机的reboot命令 

顾名思义,reboot命令是用来重新启动系统的。常用的参数如下: 

 -f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。 

 -I 参数:在在重新启动之前关闭所有网络接口。 

虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了 

二,文件与目录的操作 

列出文件列表的ls命令 

1,ls(list)命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例如下: 

 显示当前目录的内容: 

[tony@free tony]$ ls 

Desktop mail myinstall.log test.txt ← 有两个目录及两个文件夹 

 当运行ls命令时,并不会显示名称以“.”开头的文件。因此可加上“-a”参数指定要列出这些文件。范例如下: 

[tony@free tony]$ ls –a 

 以“-s”参数显示每个文件所有的空间,并以“-S”参数指定按所有占用空间的大小排序。范例如下: 

[tony@free tony]$ ls –s –S 

总计36 

4 Desktop 4 mail 24 myinstall.log 4 test.txt 

 在ls命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下: 

[tony@free tony]$ ls –l/usr/games

2,切换目录的cd命令 

cd(change directory)命令可让用户切当前所在的目录。范例如下: 

[tony@free home]$ cd tony ← 切换到当前目录下的tony子目录 

[tony@free tony]$ cd .. ← 切换到上一层目录 

[tony@free home]$ cd / ← 切换到系统根目录 

[tony@free /]$ cd ← 切换到用户主目录 

[tony@free tony]$ cd /usr/bin ← 切换到/usr/bin目录 

3,创建目录的mkdir命令 

Mkdir(make directory)命令可用来创建子目录。下面的范例会在所在目录下创建tool子目录。 

[tony@free tony]$ mkdir tool 

4,删除目录的rmdir命令 

rmdir(remove directory)命令可用来删除“空”的子目录。范例如下: 

[tony@free tony]$ rmdir tool ← 删除tool目录 

5,复制文件的cp命令 

cp(copy)命令可以将文件从一处复制到另一处。一般在使用cp命令将以个文件复制成另一个文件或复制到某个目录时,需要指定原始文件名与目的文件名或目录。范例如下: 

[tony@free tony]$ cp data1.txt data2.txt ← 将data1.txt复制成data2.txt 

[tony@free tony]$ cp data3.txt /tmp/data ← 将data3复制到/tmp/data目录中 

 显示复制过程:加入-v参数可显示命令执行过程。范例如下: 

[tony@free tony]$ cp zip.txt zip2.txt ← 一般状态下不会显示复制过程 

[tony@free tony]$ cp –v zip.txt zip3.txt ← 以-v显示复制过程 

zip.txt ->zip3.txt 

 递回复制:加入“-R”参数可同时复制目录下的所有文件及子目录。范例如下: 

[tony@free tony]$ cp –v –R * backup ← 将所有文件(含子目录文件)复制到backup目录 

6,删除文件或目录的rm命令 

rm(remove)命令可以删除文件或目录。范例如下: 

[tony@free tony]$ rm myfile ← 删除指定的文件 

[tony@free tony]$ rm * ← 删除当前目录中的所有文件

rm命令的常用参数如下: 

 强迫删除:使用-f参数时,rm命令会直接删除文件,不再询问。范例如下: 

[tony@free tony]$ rm –f *.txt ← 强迫删除文件 

 递回删除:-r 也是一个相当常用的参数,使用此参数可同时删除指定目录下的所有文件及子目录。范例如下: 

[tony@free tony]$ rm –r data ← 删除data目录(含data目录下所有文件和子目录) 

[tony@free tony]$ rm –r * ← 删除所有文件(含当前目录所有文件,所有子目录和子目录下的文件) 

 强制删除指定目录:当使用-r参数删除目录时,若该目录下有许多子目录及文件,则系统会不间断地询问,以确认您的确要删除目录或文件。若已确定要删除所存目录及文件,则可以使用-rf参数,如此一来,系统将直接删除该目录中所有的文件及子目录,不再询问。范例如下: 

[tony@free tony]$ rm –rf tmp 强制删除tmp目录及该目录下所有文件及子目录 

 显示删除过程:使用-v 参数。范例如下: 

[tony@free tony]$ rm –v 

7,让显示画面暂停的more命令 

为了避免画面显示瞬间就闪过去,用户可以使用more命令,让画面在显示满一页时暂停,此时可按空格键继续显示下一个画面,或按Q键停止显示。 

 当使用ls命令查看文件列表时,若文件太多则可以配合more命令使用。范例如下: 

[tony@free bin]$ ls –al   more 

 单独使用more命令时,可用来显示文字文件的内容。范例如下: 

[tony@free tony]$ more data.txt 

8,连接文件的cat命令 

cat(concatenate) 命令可以显示文件的内容(经常和more命令搭配使用),或是将数个文件合并成一个文件。范例如下: 

 逐页显示 preface.txt的内容: 

[tony@free tony]$ cat preface.txt   more 

 将preface.txt 附加到outline.txt文件之后: 

[tony@free tony]$ cat preface.txt >> outline.txt 

 将new.txt和info.txt合并成readme.txt文件: 

[tony@free tony]$ cat new.txt info.txt >readme.txt

9,移动或更换文件,目录名称的mv命令 

mv (move)命令可以将文件及目录移动到另一个目录下面,或更换文件及目录的名称。范例如下: 

[tony@free backup]$ mv a.txt .. ← 将a.txt文件移到上层目录 

[tony@free backup]$ mv z1.txt z3.txt ← 将 z1.txt改名成z3.txt 

[tony@free backup]$ cd.. ← 切换到上一层目录 

[tony@free tony]$ mv backup.. ← backup 目录上移一层 

10,显示当前所在目录的pwd命令 

pwd(print working directory)命令可显示用户当前所在的目录。范例如下: 

[tony@free tony]$ pwd 

/home/tony ← 当前所在目录为“/home/tony” 

11,查找文件的locate命令 

locate 命令可用来搜索包含指定条件字符串的文件或目录。范例如下: 

[tony@free tony]$ locate zh_CN 列出所有包含“zh_CN”字符串的文件和目录。 

由于locate命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时更新数据库,但对于刚新增或删除的文件、目录,仍然可能会因为数据库尚未更新而无法查得,此时可用root身份运行updatedb命令更新,为此数据库得内容正确。 

12,搜索字符串得grep命令 

grep 命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太多不必要得信息。范例如下: 

[tony@free etc]$ grep text *.conf ← 搜索当前目录中扩展名为.conf且包含“text”字符串得文件。 

grep:amd.conf: ← 拒绝不符权限得操作 

grep:diskcheck.conf: ← 拒绝不符权限得操作 

grep:grub.conf ← 拒绝不符权限得操作 

 若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权限的操作之类的错误信息,可使用-s参数消除。 

[tony@free etc]$ grep –s text *.conf

13,重导与管道 

重导(redirect)可将某命令的结果输出导文件中,它有两中命令:“>”和“>>”。“>”可将结果输出到文件中,该文件原有的内容会被删除:“>>”则将结果附加到文件中,原文件内容不会被清除。范例如下: 

[tony@free tony]$ ls –a>dir.txt ← 将ls –a命令执行结果输出到dir.txt文件。 

[tony@free tony]$ cat data1.txt >> data2.txt ← 将 data1.txt 内容附加到data2.txt文件之后。 

通道(pipe)命令的符号是“ ”,可将某命令的结果输出给另一命令,一下范例将ls命令的输出结果传给grep命令过滤: 

[tony@free etc]$ ls   gerp conf ← 搜索并显示ls命令运行结果中包含有“conf”字符串 

在举一个删除文件或目录的例子,可以利用yes命令重复输出“y”字符的特性,将结果传给rm命令,如此即可避免重复输入“y”: 

[tony@free tony]$ yes   rm –r mydir 

三,使用光盘及软盘 

在Linux的文字模式下要使用光盘或软盘,并不是只将光盘或软盘放入即可,用户需要运行加载的命令,才可读写数据。所谓加载就是将存储介质(如光盘和软盘)指定成系统中的某个目录(如/mnt/cdrom或mnt/floppy)。通过直接存取此加载目录,即可读写存储介质中的数据。以下就来看看文字模式下的加载及卸载命令。 

1,加载的mount命令 

要使用光盘时先把光盘放入光驱,然后执行加载的mount命令,将光盘加载至系统中: 

[tony@free tony]# mount/dev/cdrom/mut/cdrom ← 加载光盘 

同理,使用软盘之前也需要和光盘一样,必须先加载后才能使用: 

[tony@free tony]# mount/dev/fd0/mut/floppy ← 加载软盘 

2,卸载的umount命令 

如果不需要使用光盘或软盘,则需先执行卸载命令之后,才能将光盘或软盘退出。范例如下: 

[tony@free tony]# umount / mnt/cdrom ← 光盘卸载 

在不使用软盘时执行umount 命令卸载软盘,再将软盘拿出 

[tony@free tony]# umount / mnt/ ← 软盘卸载

四,在后台运行程序 

用户有时的程序有可能要花费很多时间,如果将它放在前台运行,将导致无法继续做其他事情,最好的方法就是将它放在后台运行,甚至可能希望在用户注销系统后,程序还可以继续运行。让我们看看那如何实现这一目的。 

1,在后台运行程序的&、bg命令 

将程序放到后台运行的最简单方法就是在命令最后加上“&”,范例如下: 

[tony@free root]# updatedb & ← 在后台执行 locate 数据库更新命令 

[tony@free root]# bg ← 将更新操作放到后台运行 

2,前台运行的程序fg命令 

如果用户当前已有程序在后台运行,可以输入fg命令,将它从背景中移到前台运行: 

[tony@free root]# fg ← 放到前台执行的命令会显示出来 

3,在退出后让程序继续运行的nohup命令 

此命令可使用户退出系统后,程序继续运行。范例如下: 

[tony@free rony]$ nohup myserver & 

然后用户就可以退出了,当再次登录的时候,可以用ps –aux命令看到程序仍在后台中运行。 

五,任务调度命令 

计算机有很多程序需要周期性的被运用,例如清理磁盘中不要的暂存盘、备份系统数据、检查远程服务器的邮件等。对于这些重复性的工作,其实不需要每次都辛苦地运行这些程序。可利用任务调度命令,指定系统定期在某个时间运行这些程序,轻轻松松完成想要执行的工作。 

任务调度的crond常驻命令 

crond 是Linux用来定期执行程序的命令。当安装完成操作系统后,默认便会启动此任务调动命令。crond命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作,便会自动执行该工作。由于任务调度中间的操作过程十分繁杂,我们只将任务调度文件的写法介绍给大家,供大家参阅: 

Minute Hour Day Month DayOfWeek Command 

在这段文字中除了“Command”是每次都必须指定的字段以外,其他自动皆可视需求自行决定是否指定。 

六,任务调度的系统工作 

/ect/crontab/文件是Linux系统工程的任务调度设置文件,其默认的内容如下: 

SHELL=/bin/bash ← 指定执行任务调度工作时所使用的SHELL 

PATH=/shin:/bin:/usr/sbin:/usr/bin ← 指定命令搜索的路径 

MAILTO=root ← 指定将输出结果给root用户 

HOME=/ ← 指定跟目录 


Linux Shell 命令集锦 (1)

 

第 [1] [2] 页

  所有命令均包含参数。具体使用方法请在命令后使用 -help 或 --help (视命令不同)。另一种学习 Sehll 命令的方法是“在线手册”。具体使用方法就是输入 man 命令,将需要了解的命令作为参数。

  比如,我不太清楚 echo 命令的使用方法。就可以在 Sehll 命令提示符中输入:man echo。然后,终端中会显示非常详细的命令说明文档。不过令人遗憾的是,我至今未见过中文的。本站以后会有专文介绍一些 Shell 命令的详细使用方法。

adduser
  创建新的用户账户
alias
  设置命令的别名
bzips
  .bz2的文件压缩程序
cal
  月历显示
cat
  将所有内容输出到标准输出设备
chfn
  更改finger命令显示的信息
chgrp
  变更文件与目录的所属组
chmod
  更换文件或目录的权限
chown
  更换文件或目录的拥有者或所在组
clear
  清除画面上的信息
col
  滤除控制字符
cp
  复制文件或目录
crontab
  设置定时器
date
  设置显示系统时间及日期
dd
  由键盘输入文件中的数据,然后依照指定格式来转换数据,再输出至所指定的文件或屏幕上
df
  显示磁盘文件系统的使用状况
dmesg
  显示开机信息
du
  显示目录或文件所占磁盘空间
e2fsck
  检查ext2文件系统
echo
  文字显示
edquota
  编辑quota
egrep
  查找文件中符合条件的字符串
exec
  shell执行命令后即交出控制权
export
  设置显示环境变量
fdisk
  磁盘分割(分区)
fg
  前台执行程序或命令
fgrep
  查找文件中符合条件的字符串
file
  识别文件类型
find
  查找文件或目录
finger
  显示用户信息
free
  查看内存状态
fsck
  检查文件系统并试着修复错误
ftp
  传输文件
grep
  搜索文件中符合条件的字符串
groupadd
  创建组
groupdel
  删除组
groupmod
  改变组识别码或名称
gunzip
  文件解压缩
gzip
  文件压缩
halt
  关闭系统
help
  shell创建命令内容
history
  列出所有使用过的命令
hostname
  查询及设置主机名称
id
  显示用户ID及所属的组ID
ifconfig
  显示或设置网络上状态
insmod
  加载模块
jobs
  显示正在后台执行的工作
kill
  删除执行中的程序或工作
last
  列出目前与过去登录系统的用户相关信息
less
  显示文件内容
lilo
  安装内核加载、开机管理程序
linuxconf
  设置Linux系统
ln
  连接文件或目录
locate
  寻找文件
login
  登录系统
logout
  注销系统
ls
  列出目录内容
lsmod
  显示已加载系统的模块名称
mail
  E-mail管理程序
make
  编译系统核心或模块
man
  在线查询命令
mcopy
  复制MS-DOS文件
mdel
  删除MS-DOS文件
mdeltree
  删除MS-DOS文件及包含的子目录文件
mdir
  显示MS-DOS目录
mkbootdisk
  创建目前系统的引导盘
mkdir
  创建目录
mke2fs
  创建ext2文件系统
mkfs
  创建各种文件系统
more
  一页一页地显示文件内容(文本文件)
miunt
  挂入文件系统
mouseconfig
  设置鼠标相关参数
mv
  移动或更名现有的文件或目录
netconfig
  Red Hat Linux用来设置网络功能的图形接口程序
netstat
  显示目前系统的网络状态
nice
  变更程序执行时的优先等级
nohup
  在用户注销系统后继续以后台的方式执行指定的命令
open
  查找第一个可使用的虚拟终端,并执行位于“--”符号后的命令
passwd
  提供管理员及用户管理或变更密码
patch
  利用修补文件来修改源文件
pine
  邮件处理程序,它可收发电子邮件及浏览新闻组
ping
  使用ICMP对远程主机发出要求响应的信息,以侦测远程主机的网络功能是否正常
ps
  显示程序执行的状况
pwd
  显示目前的工作目录
quota
  查询磁盘空间限制以及使用情形
quotacheck
  检查磁盘使用空间及限制
quotaoff
  关闭磁盘使用空间限制
quotaon
  开启磁盘使用空间限制
reboot
  停止系统运作并重新开机
renice
  重新调整程序执行的优先级
repquota
  显示磁盘空间限制状况
rm
  删除文件或目录
rmdir
  删除目录
rpm
  管理 Red Hat Linux 套件
set
  设置 Shell 的执行方式
setup
  设置公用程序,可设置的选项包括:登录认证方法、键盘配置、
鼠标配置、开机启动服务、声卡本配置、时区设置和 XWindow 配置等
shutdown
  系统关机
startx
  启动 XWindow
stat
  显示 inode 内容
su
  变更用户身份
sync
  将内存缓冲区内的数据写入磁盘
tail
  列出文件内容最后部分
talk
  和其他用户交谈
tar
  文件备份
telnet
  登录远程主机
top
  显示及管理执行中的程序
traceroute
  显示封包到远程主机间的详细路径
umask
  在创建文件时预设的权限屏蔽
umount
  卸载文件系统
unalias
  删除别名
uname
  显示系统信息
uncompress
  将 .Z 文件解压缩
unzip
  将 .Zip 文件解压缩
useradd
  创建用户账号
userdel
  删除用户账户
vi
  编辑文本文件
w
  显示目前登录系统的用户信息
wall
  将信息传送至每位终端用户
whereis
  查找文件,预设 whereis 去查找的文件包括:/bin、/etc、/sbin、
/usr/bin、/usr/etc、/usr/games、/usr/include、/usr/lib、
/usr/local、/usr/man、/usr/sbin、/usr/src、/usr/local/bin、
/usr/local/etc、/usr/local/game、/usr/local/lib 和/usr/local/man>
which
  在环境变量¥PATH 设置的目录中,搜索符合条件的文件
who
  显示目前登录系统的用户信息
whoami
  显示用户名称
whois
  搜索并显示用户信息
write
  可传送信息给另一位登录的用户
Xconfigurator
  设置 Xfree86
xf86config
  设置 XFree86
zip
  压缩程序

本文转自kenty博客园博客,原文链接http://www.cnblogs.com/kentyshang/archive/2007/05/25/759796.html如需转载请自行联系原作者

kenty
上一篇:Linux常用命令和技巧


下一篇:iOS开发UI篇—Quartz2D使用(绘制基本图形)