红联Linux门户
Linux帮助

基本的使用命令,请指教!

发布时间:2008-07-30 03:54:24来源:红联作者:apengzi
这次应该可以了吧!其实我也是刚学的,大家一起加油啊
Open Source Software 开放源代码软件
GNU General Public License 通用公共许可证
LGNU Lesser General Public License 宽通用公共许可证
Log out 注销用户
Shut down 关闭系统
Restart the computer 重新启动
常用命令及账户管理
帮助命令
help 命令名 显示Bash命令的帮助信息
man 用于手册页的阅读 info 用于信息页的阅读
常用命令
1、 文件和目录操作命令
ls 显示指定目录和文件的信息 pwd 显示当前目录名称
cd 目录更改命令 mkdir 新建目录命令
rmdir 删除目录命令
2.文件操作命令
file 文件类型查看命令 touch 新建文件命令
cp 复制文件命令 rm 删除文件命令
mv 文件移动与文件重命名 find 查找文件命令
3.文本文件查看命令
cat 简单的文本查看
more 适合于阅读较长的文本文件
less 适合于进行较大的文本文件阅读
head与tail 头部、尾部
4.光盘驱动器设备文件
/dev/cdrom
挂载光盘使用mount命令
# mount -t iso9660 /dev/cdrom /media/cdrom/
光盘内容的读取,使用命令访问光盘挂载点目录
# ls /media/cdrom/
卸载光盘使用umount命令
# umount /dev/cdrom
弹出或收回光盘驱动盘托盘
# eject # eject -t
5.使用cp命令制作光盘镜像文件
# cp /dev/cdrom mydatacd.iso
用mount命令挂载光盘镜像文件
# mount -o loop -t iso9660 mydatacd.iso /media/cdrom/
通过挂载点目录访问ISO镜像文件的内容
# ls /media/cdrom/
使用umount命令卸载光盘镜像文件
# umount /media/cdrom/
6.识别USB存储设备,包括USB硬盘、U盘、MP3播放器等 /dev/sda /dev/sdb ……
# fdisk -l
使用mount命令挂载U盘
# mount -t vfat /dev/sda1 /mnt/
通过挂载点目录访问U盘的内容
# ls /mnt
使用umount命令卸载U盘
# umount /mnt
用户、组管理命令
1.建立用户帐号
# adduser st01
设置用户口令
# passwd st01
设置用户帐号属性
锁定用户帐号禁止登录
# usermod -L st01
删除用户帐号
# userdel -r st01
2.添加用户组
# groupadd class1
在建立用户时指定用户组
# adduser -g class1 st03
更改用户的组帐号
# usermod -g class1 st01
删除用户组
# groupdel class1
文件权限设定
1.查看文件权限
$ ls -l 文件名
增加文件属主st01的执行权限(x)
$ chmod u+x文件名
去除文件属组class1的写权限(w)
$ chmod g-w文件名
设置其他用户的文件权限为可执行
$ chmod o=x文件名
2.设置文件的属主和属组
命令格式
chown OWNER[:[GROUP]] FILE...
设置文件afile的属主为用户st01
# chown st01 afile
设置文件afile的属组为用户组class1
# chown :class1 afile
设置文件afile的属主为st03,并设置文件的属组为class2
# chown st03:class2 afile

文本编辑
基本使用
1.vi编辑器的启动与退出
vi 直接进入编辑环境
: q! 强行退出vi编辑环境
2.文件操作
: e 打开新文件 : r 读取文件内容到当前文件
: w 保存文件 : q 退出vi编辑器
: wq 保存并退出
3.光标移动操作
光标方向移动
h 向左移动 l 向右移动
k 向上移动   j 向下移动
翻页移动
   Ctrl + F 向前翻整页 Ctrl + B 向后翻整页
Ctrl + U 向前翻半页 Ctrl + D 向后翻半页
行内快速跳转
  ^ 快速跳转到本行的行首字符   $  快速跳转到本行的行尾字符
  w 快速跳转到当前光标所在位置的后一个单词的首字母
  b  快速跳转到当前光标所在位置的前一个单词的首字母
e 快速跳转到当前光标所在位置的后一个单词的尾字母
文件内行间快速跳转
  set nu 编辑器中显示行号   set nonu 取消行号的显示
  1G 跳转到文件的首行    G  跳转到文件的末尾行
  #G 跳转到文件中的第#行
编辑操作
  进入输入模式
  i 在当前光标处进入插入状态
  a 在当前光标后进入插入状态
  A 将光标移动到当前行的行末,并进入插入状态
  o 在当前行的下面插入新行,光标移动到新行的行首,进入插入状态
  O 在当前行的上面插入新行,光标移动到新行的行首,进入插入状态
  cw 删除当前光标到年在单词尾部的字符,并进入插入状态
  c$ 删除当前光标到行尾的字符,并进入插入状态
  c^ 删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态
输入模式的操作
  删除操作
  x 删除光标处的单个字符
  dd 删除光标所在行
  dw 删除当前字符到单词尾(包括空格)的所有字符
  de  删除当前字符到单词尾(不包括单词尾部的空格)的所有字符
  d$  删除当前字符到行首的所有字符
  J  删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容。
撤销操作
  u 取消最近一次的操作,并恢复操作结果
  U 取消对当前行进行的所有操作
  Ctrl + R 对使用u命令撤销的操作进行恢复
复制操作
  yy 复制当前行整行的内容到vi缓冲区
  yw 复制当前光标到单词尾字符的内容到vi缓冲区
  y$ 复制当前光标到行尾的内容到vi缓冲区
  y^ 复制当前光标到行首的内容到vi 缓冲区
  : m, ny 复制文件中第m行到第n行之间的文本
粘贴操作
p 将缓冲区中的内容粘贴到当前的位置(不覆盖文件已有的内容)
查找与替换操作
  / word 自上而下的查找操作
  ? word 自下而上的查找操作
 : s / old / new 普通替换操作
: s / old / new / g 行内全部替换操作
: #, #s / old /new / g 在行区域内进行替换操作
: % s / old / new / g 整个文件内的替换操作
: s / old / new / c 使用替换的确认功能
编辑器的多文件操作
: args 显示多文件信息
: next 和 : prev 前后切换多文件
: first 和 : last 定位首文件和尾文件
Ctrl + ^ 快速文件切换
shell 的使用
Shell变量
set 查看系统中的shell变量 echo 显示字符串或shell变量的值
常用环境变量:
$USER 表示当前用户的登录名称,该变量与whoami命令的结果一致
$UID 表示当前用户的用户号(UID),该变量与” id -u” 命令的结果一致
$SHELL 表示当前用户的登录shell,该变量的值与”passwd”文件中的shell字段一致
$HOME 表示当前用户的登录目录(宿主目录),该变量的值与” passwd” 文件中的home字段一致
$PWD 表示当前用户当前所在的目录,该变量的值与pwd命令的结果一致
$PATH 表示当前用户的命令搜索路径,即用户不指定全路径执行命令时,shell程序将在哪些目录以及按照何种顺序进行命令的搜索
$PS1和$PS2分别代表当前用户的主提示符和辅助提示符
常用预定义变量
$# 表示位置参数的数量
$* 表示所有位置参数的内容
$? 表示命令执行后返回的状态,用于检查上一个命令的执行是否正确
$$ 表示当前进程的进程号
$! 表示后台运行的最后一个进程号
$0 表示当前执行的进程名
管道与重定向
wc 用于计算文件中的字符数、单词数和行数
wc < 文件名 将文件中的内容输入重定向到wc命令,使wc命令不使用标准输入文件(键盘)接收输入内容
wc > 文件名 将命令的执行结果重定向输出到指定的文件中,其结果将不显示在屏幕上
wc >> 文件名 将命令的执行结果重定向并追加到指定文件的末尾保存
2> 文件名 将错误信息重定向保存到指定的文件中
2>> 文件名 将错误信息重定向并追加到指定的文件保存
&> 将命令执行的输出和错误输出重定向到指定的同一个文件中
linux应用程序安装与管理
使用rpm命令查询软件包
rpm -qa 查询系统中安装的所有RPM包
rpm -q RPM包名称 查询软件是否安装
rpm -qi RPM包名称 查询软件包详细信息
此命令的执行结果中包括如下几项RPM包的详细信息:
Name 软件包中软件的名称
Version和Pelease 软件的版本信息
Build Date 软件包的建立时间
Install Date 软件包的安装时间
Size 软件包的大小
License 软件遵从的许可协议
Packager 软件的打包者
Summary 软件包的概括描述
Description 软件包的详细信息
rpm -ql RPM包名称 查询已安装软件包中的文件列表
rpm -qf 文件名称 查询系统中文件所属的软件包
rpm -qp 查询安装包文件中的信息
使用rpm命令安装软件包
rpm -i RPM安装包文件名 安装指定的RPM软件包到当前系统
rpm -ivh RPM安装包文件名 在安装软件包的同时显示详细信息
使用rpm命令卸载软件包
rpm -e 软件包名称 卸载RPM软件
rpm -U RPM安装包文件名 实现软件包的升级
编译与安装
make 程序编译
make install 程序安装
在proz安装目录中建立的子目录:
bin目录用于保存程序的执行文件
include目录用于保存程序的头文件
lib目录用于保存程序的库文件
man目录用于保存程序的手册页文件
share目录用于保存程序的多语言文件等其他文件


linux系统管理
运行级别
runlevel 显示系统当前运行级别
init [0 1 2 3 4 5 6] 改变系统运行级别
chkconfig --list [服务名称] 查看服务启动状态
chkconfig --level <运行级别列表> <服务名称> 设置独立服务的启动状态
chkconfig <服务名称> 设置非独立服务的启动状态
进程管理
ps aux 查看系统中运行进程的完整信息
ps输出中所包含的信息有:
USER 指明是哪个用户启动了这个命令
PID 进程的ID号,通常通过它来引用该进程
TTY 指明这个进程运行在哪个终端上
SATA 显示进程当前的状态
TIME 指明这个进程已经占用CPU多长时间
COMMAND 指明启动这个进程的命令名称
%CPU 某个进程的CPU占用百分比
%MEM 某个进程的内存占用百分比
VSZ 一个程序如果完全驻留内存中需要占用的内存数量
RSS 进程实际占用了多少内存
top 查看系统信息
pstree 查看进程树
top Ctrl + Z 把当前终端中运行的进程调入后台
jobs 查看后台的进程
fg [后台进程编号] 将后台的进程恢复到前台运行
Ctrl + C 结束当前终端中运行的命令
kill [-9] PID 终止进程

service crond status 查询crond服务状态
service crond stop 停止crond服务
service crond start 启动crond服务
service crond restart 重新启动crond服务

crontab -l 查看当前的 cron任务列表
crontab -e 修改现有的cron任务
crontab -r 删除用户现有的cron任务
系统配置文件crontab中的设置变量:
SHELL 设置cron所使用的shell环境
PATH 定义执行命令的路径
MAILTO 设置cron的输出将补邮寄到用户的邮件地址
HOME 设置在执行命令或脚本时使用的主目录
磁盘配额命令
quotacheck -cmug 文件系统挂载点目录 建立文件系统配额文件
quotacheck -mfvug 文件系统 对文件系统的配额进行一致性检测
edquota -u 用户名 编辑用户配额
edquota编辑界面中各列的含义:
Filesystem 表示文件系统,即需要设置配额的硬盘分区
blocks 用户当前已经占用的数据块数量,每块容量为1KB, 由程序自动计算的
inodes 用户文件系统中当前用户占用”i节点”的个数,即用户拥有的文件数,自动计算
soft 磁盘容量或文件个数的软限制数量,需要用户进行设置
hard 磁盘容量或文件个数的硬限制数量,需要用户进行设置
edquota -g 组名 编辑组配额
edquota -t 编辑配额的宽限时间
quota -u 用户名 显示用户配额情况
quota -g 用户组名 显示组配额情况
文件的归档与备份
tar cf tar文件名 需备份的文件或目录名 对文件和目录的归档
tar czf tar.gz文件名 需备份的文件或目录名 对文件和目录进行压缩备份
tar tf tar文件名 查看tar文件中的目录列表
tar tzf tar.gz文件名 查看压缩归档文件中的目录列表
tar xf ta文件名 恢复tar备份文件
tar xzf tar.gz文件名 恢复压缩的tar备份文件
tar xf 文件名 -C 目录名 恢复归档文件到指定目录
tar xzf 文件名 -C 目录名 恢复归档文件到指定目录
linux基本网络配置
查看网络接口信息
ifconfig [网络接口名称] [-a] 查看网络接口信息
route 查看主机路由信息
ping [-c] [测试数据包数量] [目的主机地址] 测试与其他主机的网络连接
traceroute 目的主机地址 测试与其他主机的网络连接路径
hostname 查看当前主机的主机名称
nslookup [待解析域名] 查询主机域名
网络设置
dhclient 从DHCP服务器中申请新的网络配置应用于当前主机
ifconfig 网络接口名称 ip地址 netmask 子网掩码 IP地址配置命令
route del default gw 默认网关地址 删除默认网关路由记录
route add default gw 默认网关地址 添加默认网关路由记录
hostname 主机名称 临时设置主机名称
网络接口配置文件解析
DEVICE 用于设置网络接口的名称
ONBOOT 用于设置网络接口是否在linux系统启动时激活(设置为有效)
BOOTPROTO 用于设置网络接口是配置为静态地址或是配置为使用DHCP获得地址
IPADDR 用于设置网络接口的IP地址
NETMASK 用于设置网络接口的子网掩码
GATEWAY 用于设置网络接口的默认网关地址

NFS文件系统
service 服务程序脚本名称 status 查询服务器的状态
service 服务程序脚本名称 start 启动服务器的状态
service 服务程序脚本名称 stop 停止服务器的状态

showmount [NFS服务器主机地址] 显示主机的NFS服务器信息
showmount -e [NFS服务器主机地址] 显示主机的NFS服务器的输出目录列表
showmount -d [NFS服务器主机地址] 显示NFS服务器中被挂载的共享目录
showmount -a [NFS服务器主机地址] 显示NFS服务器的客户机与被挂载的目录

exportfs -rv 使新设置的”exports”文件内容生效,而不需要重新nfs 服务器
exportfs -auv 临时停止NFS服务器的所有共享目录输出
exportfs -av 输出当前主机中的NFS服务器的所有共享目录

配置使用NFS客户端
showmount -e [NFS服务器主机地址] 显示主机的NFS服务器的输出目录列表
mount -t nfs NFS服务器地址: 共享目录 本地挂载点目录 挂载NFS服务器的共享目录
mount | grep mnt 显示当前主机挂载的NFS共享目录

[ 本帖最后由 apengzi 于 2008-7-30 04:05 编辑 ]
文章评论

共有 15 条评论

  1. lemonade 于 2008-08-15 20:30:55发表:

    自己知道就行,这种简单又重复的帖子不要再写了。

  2. cwqing1973 于 2008-08-15 15:42:22发表:

    不错啊,至少是有信心!如果加上一些基本的Shell编程到里面,如果你的有时间、有信心、耐得住寂寞。不出二个月的时间,你可是在Linux的基本操作方面是一个高手了。

  3. apengzi 于 2008-08-15 02:16:39发表:

    懂这里的命令的同时,大家也要记住它们的配置文件啊,其实修改脚本的话可以剩很多事的!比如设置IP地址,你不改脚本的话,那就是一次性的,要改配置文件或者使用工具!(RHEL4:netconfig 命令也行)

  4. firelacker 于 2008-08-06 21:50:20发表:

    刚开始,向大家学习

  5. 仰望星空 于 2008-08-06 19:44:56发表:

    支持一下

  6. dapaifeng 于 2008-08-06 10:48:21发表:

    好东西 顶啊

  7. wubaoping21 于 2008-08-03 19:42:03发表:

    :0)1 好像少了点啊,设置密码的有效期没有啊
    呵呵,有时间你再加上把

  8. carleena 于 2008-08-03 13:47:54发表:

    呵呵,真的不错。很适合我。谢谢。

  9. 破冰 于 2008-08-01 03:14:09发表:

    这个不错,适合初学者,俺转到自己的BLOG上了
    http://www.westsafe.net/cn/post/Linux_5996.html
    :0)1

  10. lin195355 于 2008-07-31 19:11:02发表:

    :0)1 不错 很适合初学者~

  11. chen_hal 于 2008-07-31 11:10:06发表:

    不错,好东西,非常适合像我一样的初学者:)

  12. apengzi 于 2008-07-30 13:47:28发表:

    因为我刚接触LINUX,所以一步步来,这些命令就相当于鼠标,所以还是必要的,但你说的C语言编写程序,我是一定会用的,非常感谢你!

  13. Mhynan 于 2008-07-30 09:37:33发表:

    收下了

  14. doupierlvdou 于 2008-07-30 09:26:54发表:

    0:w(5(
    个人认为:
    上面的基本的指令只是用来熟悉如何应用linux 操作系统的,就像如何在windows xp下如何设置电脑的属性等...
    如果说你想学习linux,那么应该将它们应用于shell编程,然后再熟悉在linux 下如何用C语言来编写应用程序。

    自己编的应用程序在自己的爱机上跑是一件很有意思的事情。
    :0)1

  15. apengzi 于 2008-07-30 04:06:23发表:

    这是我学习的课程内容,不知道合不合适