逐梦论坛's Archiver

乐园主编 发表于 2014-8-11 05:12

Linux的常用命令和基本操作

Linux的基本思想:
1.      一切皆文件。
2.      由短小切目的单一的程序组成。
3.      组合小程序完成大任务。
4.      尽可能少的和用户交互。
5.      以文本文件的形式保存所有软件的配置信息。

Shell:
Shell是指提供使用者使用界面,将用户的命令转换成二进制的形式交给应用软件。

Shell的分类:图形界面shell(Graphical User Interface shell 即 GUI shell);
                       命令行式shell(Command Line Interface shell 即CLI shell)。

UINX中shell的种类主要包括:sh,ksh和 bash。

Linux的基本命令和操作:
Linux国际化(linux internationalization,即“i18n”)

[root@server55 ~]# cat /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"

通过修改LANG="en_US.UTF-8"来改变linux的语言环境。

Locale 显示当前语言名字和值:

[root@server55 ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

显示所有系统所支持的语言包:
[root@server55 ~]# locale –a

登出:
[root@server55 ~]# logout

每个linux可以提供多套终端,由Ctrl + Alt + Fn进行切换;其中1~6为命令行界面,7为图形化界面。

未启动图形化界面时启动方法:
[root@server55 ~]# startx &

若要启动更多:
[root@server55 ~]# startx -- :1

在命令行界面上下翻屏:Shift + PgUp / PgDn

在命令行界面中复制/粘贴快捷键:Ctrl + Shift + c复制;Ctrl + Shift + v 粘贴。

更改开进默认进入界面:
[root@server55 ~]# vim /etc/inittab
id:3:initdefault: 默认进入文字界面
id:5:initdefault: 默认进入图形界面

用户密码修改:
[root@server55 ~]# passwd 用于修改root密码 修改时需要提供旧密码
[root@server55 ~]# passwd + user 用于修改指定用户密码 以root身份修改时 无需提供旧密码

切换用户SwitchUser:
[root@server55 ~]# su student  su后不跟任何选项直接跟用户 不完全切换
[student@server55 root]$
[root@server55 ~]# su -l student  su后跟 –l 或 – 再加用户  完全切换
[student@server55 ~]$

查看此前所有执行过的指令:
eg:
[root@server55 ~]# history
    1  mount /dev/cdrom /mnt
    2  cd /mnt
    3  ls
    4  reboot
    5  ls /mnt
    6  mount /dev/cdrom /mnt
    7  ls /mnt
    8  rpm -ivh /mnt/VMwareTools-6.0.2-59824.i386.rpm
    9  cd ..
   10  wm
   11  cd ..
   12  umount /dev/mount

↑ ↓ 对近期执行过的指令进行切换。
[root@server55 ~]# !+ num  表示第num条命令;
[root@server55 ~]# !+ string 表示离现在最近与string想匹配的命令;
[root@server55 ~]# !!        表示执行上一条指令;

引用上一条指令中的参数(即命令作用对象):
eg:
[root@server55 ~]# cat /etc/sysconfig/i18n
若此时仍想对/etc/sysconfig/i18n进行vim编辑即可输入
[root@server55 ~]# vim !$

[root@server55 ~]#vim 按住Alt +  .

[root@server55 ~]#vim 短按Esc+  .

通过环境变量HISTCONTROL设置history的记录规则:
[root@server55 ~]#export HISTCONTROL=ignorespace 以空格开头的命令在history中不予记录;
[root@server55 ~]#export HISTCONTROL=ignoredups 在history中出现过两次以上的命令只记录一次;
[root@server55 ~]#export HISTCONTROL=ignoreboth 空格不予记录且命令只记录一次;
撤销HISTCONTROL:
[root@server55 ~]#export HISTCONTROL=

[root@server55 ~]#unset HISTCONTROL
清空history记录:
[root@server55 ~]#history –c

文本编辑器nano:
[root@server55 ~]#nano+文件名 打开文本文档或创建一个文本文档
可根据nano内组合键提示 完成文本的读取、编辑和存储。

显示文件信息ls (list):
[root@server55 ~]#ls + 选项 +文件路径
-l 显示详细信息;
-a显示所有文件(包括隐藏文件);
-d显示文件的自身属性,而不是该目录中的文件;
-r倒序排列;
-R递归显示:显示目的目录下的文档以及其子文档。

[root@server55 ~]#tree +文件路径
可以显示目的文档的文件结构。详见下例

创建目录:
[root@server55 ~]#mkdir + 选项 +创建文档的路径
-p同时生成目的目录及其父目录
-v创建时显示过程
eg:
[root@server55 ~]# mkdir -pv a/b/c
mkdir: created directory `a'
mkdir: created directory `a/b'
mkdir: created directory `a/b/c'
[root@server55 ~]# tree a
a
`-- b
    `-- c

2 directories, 0 files

删除目录:
[root@server55 ~]#rmdir
只能删除空目录。

移动文件:
[root@server55 ~]#mv 源文件 目的路径
eg:
x向相对路径下的./a/y移动 x为目录 y为非目录文件 提示不能覆盖
[root@server55 a]# touch y
[root@server55 ~]# mkdir x
[root@server55 ~]# mv x ./a/y
mv: cannot overwrite non-directory `./a/y' with directory `x'

mv基本可以这么总结:
文件→目录 进入该目录下
目录→目录 进如该目录下
文件→文件 提示是否覆盖 (root默认mv=mv –v,mv –f 即可不提示覆盖信息)
目录→文件 系统报错

文件复制:
[root@server55 ~]#cp +选项+参数
-p连同档案的属性一起复制到新目录下
-r,-R递归复制 recursive 复制连带子目录中内容
-i覆盖提示
-a =-prd
cp的基本总结如下:(文件目录不能直接cp)
目录→目录 进如该目录下
文件→文件 提示是否覆盖 (cp: overwrite `xxxx'?,root默认cp=cp –v,cp –f 即可不提示覆盖信息)
文件→目录 报错(xxxx : Not a directory)
目录→文件 报错(cp: cannot overwrite non-directory `c' with directory `a')

[root@server55 ~]#mv a b c d
指将abc 3个文件 移动至d目录下(注意此时d一定需是目录,否则报错)

[root@server55 ~]#mv a b
相同路径下使用mv命令,视为重命名文件。

查看文件的三个时间属性:
[root@server55 ~]# stat a
  File: `a'
  Size: 4096             Blocks: 16         IO Block: 4096   directory
Device: fd00h/64768d    Inode: 1110922     Links: 3
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2011-07-18 21:53:12.000000000 +0800
Modify: 2011-07-18 21:49:46.000000000 +0800
Change: 2011-07-18 21:49:46.000000000 +0800

Atime:最后一次的访问时间;
Mtime:最后一次的内容修改时间;
Ctime:最后一次的属性变化时间。(权限等属性变化,且基本atime mtime变换 都会导致ctime变化)

修改文件的Mtime和Atime:
[root@server55 ~]# touch + 选项+ 文件名
-a 将当前系统时间设置为atime;
-m 将当前系统时间设置为mtime
-t + 时间[CC]YY]MMDDhhmm[.ss] 使用自定义时间同时修改atime+mtime

文件的删除:
[root@server55 ~]#rm +选项+文件
-i删除前询问(root用户默认rm=rm –i)
-r,-R 递归删除recursive 删除目录下的所有内容
-f 强行删除force 删除前不在询问
eg:
[root@server55 ~]#rm –rf /  输此命令有惊喜!

改变目录ChangeDirectory:
[root@server55 ~]#cd
[root@server55 ~]#cd ~ 以上两条都是直接回到家目录
[root@server55 ~]#cd ..回到上一级
[root@server55 ~]#cd – 后退,类似电视遥控器的“返回”
eg:
[root@server55 ~]# cd -
/etc/sysconfig                   回到之前的目录
[root@server55 sysconfig]# cd -
/root                          又重新回到家目录
[root@server55 ~]# cd -
/etc/sysconfig                   再次回到之前的目录

显示当前目录:
[root@server55 sysconfig]# pwd
/etc/sysconfig

常见的一级目录和功能:
/bin
bin即binary,指可直接执行的二进制文件。 在/bin底下的指令可以被root与一般账号所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常用的指令。

/boot
这个目录主要在放置开机会使用到的档案,包括Linux核心档案以及开机选单与开机所需设定档等等。 Linux kernel常用的档名为:vmlinuz,如果使用的是grub这个开机管理程序, 则还会存在/boot/grub/这个目录。

/dev
在Linux系统上,任何装置与接口设备都是以档案的型态存在于这个目录当中的。 你只要透过存取这个目录底下的某个档案,就等于存取某个装置。

/etc
系统主要的设定文件几乎都放置在这个目录内,例如人员的账号密码文件、 各种服务的启始档等等。一般来说,这个目录下的各档案属性是可以让一般使用者查阅的, 但是只有root有权力修改。

/home
这是系统预设的使用者家目录(home directory)。在你新增一个一般使用者账号时, 预设的使用者家目录都会规范到这里来。

/lib
系统的库文件,而/lib放置的则是在开机时会用到的库文件,以及在/bin或/sbin底下的指令会调用库文件,而库文件不能直接被执行。

/media
/mnt
软盘、光盘、DVD等等装置都暂时挂载于此,常见的档名有:/media/floppy, /media/cdrom等等。如果想要暂时挂载某些额外的装置,可以放置到这个目录中。这个目录的用途与/media相同只是有了/media之后,这个目录就用来暂时挂载用了。

/usr
第三方软件安装完成后的帮助信息等。

/opt
这个是给第三方软件安装时放置的目录。eg:Oracle等

/root
系统管理员(root)的家目录。

/sbin
这些指令只有root才能够调用执行的指令,其它使用者最多只能用来『查询』而已。 放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令。

/srv
srv可以视为service的缩写,是一些网络服务启动之后,这些服务所需要存取用的数据目录。

/tmp
这是让一般使用者或者是正在执行的程序暂时放置档案的地方。

/proc
伪目录,在内核中正在执行的程序所生成的文件。

/sys
有系统产生,内核中硬件信息的映射,常用于系统调优。

/var
经常变化的文档,用户的邮件队列、打印队列的文件。

磨房深圳 发表于 2014-8-11 12:15

长江后浪退前浪,灌水英雄代代出。

午后奶茶 发表于 2014-8-11 15:14

曾经错过的好贴,一定要留个名,呵呵

心服口服 发表于 2014-8-11 19:16

顶而不懈,遇到好贴决不能放过

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.