linux常用命令
ls 查看目录或者文件的属性
参数:
        -a 显示所有档案及目录 (ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出)
  -l 除档案名称外,亦将档案型态、权限、拥有者、档案大小等资讯详细列出
  -r 将档案以相反次序显示(原定依英文字母次序)
  -t 将档案依建立时间之先后次序列出
  -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
  -F 在列出的档案名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
  -R 若目录下有档案,则以下之档案亦皆依序列出
cd 切换当前目录 路径可为绝对路径或相对路径
        "~" 也表示为家目录
         "." 则是表示目前所在的目录
         ".." 则表示目前目录位置的上一层目录。
        cd  ~ 切换到当前用户的家目录
 
pwd 查看当前用户所在的工作目录的绝对路径名称。
clear:清屏(ctrl+l)
finger 查询用户信息 finger –l root
history 用户用过的命令
         !! 执行最近一次的命令
           !n 显示编号为n的命令并执行
        history 4 显示最近使用的四条命令
 
date 显示系统时间
date (月日时分年.秒)
         date 120512252010.25 (2010年12月5日12:25分25秒)
          date +%T %F 显示时期和时间
clock 显示系统硬件时间
nwclock –w 把系统时间写入到硬件时钟上达到一致
naclock –s 以硬件为准 与-w相反
mkdir 创建目录
参数:-p 确保目录名称存在,不存在的就建一个
           -v 显示创建过程
            mkdir -p /home/test
touch 创建空文件或更改文件时间戳
 参数:
   a 改变档案的读取时间记录。
   m 改变档案的修改时间记录。
   c 假如目的档案不存在,不会建立新的档案
   r 使用参考档的时间记录
    touch -r  refere  file 将 file 的时间记录改变成与 refere一样。
    d 设定时间与日期,可以使用各种不同的格式。
    touch -d "6:03pm 05/06/2000" 文件名
         t 设定档案的时间记录,格式与 date 指令相同。
     touch -c -t 050618032000 file
将 file 的时间记录改为 2000年6月5号18点 3分
rmdir : 删除空的目录。
参数: -p 是当子目录为空目录的话,则顺便一并删除主目录。
         rmdir  abc 将工作目录下,名为 abc的子目录删除
           rmdir -p  jing/Test 在工作目录下的 jing目录中,删除名为 Test 的子目录。若 Test 删除后,jing成为空目录,则 jing 亦予删除。
rm 删除文件或目录
参数:    -r 删除目录
               -f 不用提示就删除
               -i 删除前逐一询问确认。
mount 挂载一个硬件设备
用法:mount [参数] 要加载的设备 载入点
             mount  /dev/cdrom /mnt/cdrom
umount 卸载硬件设备
            umount  /mnt/cdrom
文件管理:
cat,more ,less (将某个文件的内容显示出来)
cat 把文件内容一直打印出来
参数 : -n 或 --number 由 1 开始对所有输出的行数编号
              cat –n a.out
 
more 分屏显示 通常与管道| 连用(ctrl+pageup :向上翻页 空格键:向下翻页)
less 将内容分屏显示或分行显示(向下翻页:空格键 向上:B 逐行向上显示:k 向下:Enter )
cp    cp [options] source dest 将一个文件或目录拷贝至另一位置
参数:-a 尽可能将档案状态、权限等资料都照原状予以复制。
      -r 若 原文件为目录,则将目录下之档案亦皆依序拷贝至目的地。
      -f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。
diff 比较文件的差异。要比较目录,则diff会比较目录中相同文件名的文件,不会比较其中子目录。
参数 : -r 比较子目录中的文件。
patch 打补丁
     patch –R 一般要往原文件中补 往目标文件里补要降级
补丁文件和比较的文件在不同的目录时,打补丁要加上参数pn(数字)
数字部分表示除去补丁文件前路径斜杠:/var/jing/c.patch p3
diff abc abcd >abc.patch
patch abc <abc.patch abc abcd的内容就会一样
ln  ln [options] source dist 在Linux/Unix 档案系统中,有所谓的连结(link),可以将其视为档案的别名,连结文件又分为硬连结和软连接
文件的硬链接:存在于同一个磁盘中 文件大小和源文件一样
显示属性还是普通文件
软连接:将文件指向另一个位置,可以存在于不同的磁盘中 文件大小为源文件的路径字符个数
显示文件属性为链接文件(l)
区分硬链接和软连接靠后面的参数
            -f : 链结时先将与 dist 同档名的档案删除-
            -n : 在进行软连结时,将 dist 视为一般的档
            -i : 在删除与 dist 同档名的档案时先进行询问
            ln -s 源 目标 (软链接)
            ln 源 目标 (硬链接)
cut   
cut –c 0-6 文件名 显示每行从开头算起前六个的文字。
显示特定文件的栏位资料
            -d 输入间隔符号 –d:以:间隔的
           -fn(数字)显示文件的第n栏
Sort 对文件内容进行排序
            -r 倒序排
             -t 可以指定按那栏进行排
              -n 以数字进行排
             -o 把排序结果进行保存
              -k 不区分大小写
              -u 保持文件内容的唯一性 重复的除去
             sort –t3  /etc/passwd
tee 会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。
         cut –f1 –d: /etc/passwd | tee cut.file | sort |less 显示的内容导入到cut.file存档
 
mv  使用方式:mv [options] source dest
  mv [options] source... directory
  说明:将一个档案移至另一档案,或将数个档案移至另一目录。 同一个目录则为修改名称
  参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。
                  将档案 aaa 更名为 bbb :mv aaa bbb
file:辨识该文件的类型。
          -L  直接显示符号连接所指向的文件的类别。
文件查询
whereis查询命令所在目录以及帮助文档所在目录
            -b  只查找二进制文件。 
         -B<目录>  只在设置的目录下查找二进制文件。 
          -f  不显示文件名前的路径名称。 
          -m  只查找说明文件。 
         -M<目录>  只在设置的目录下查找说明文件。 
         -s  只查找原始代码文件。 
          -S<目录>  只在设置的目录下查找原始代码文件。
whoami:确认自己身份
which:查询该命令所在目录(类似whereis)
id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)
 文件查找:locate  find
locate命令 模糊查询 要求数据库必须存在
updatedb 手动生成locate用的数据库查找
 查找文件是基于数据库的,在重装系统后时系统是查不到的 要手动更新查找文件所用到的数据库,就用该命令 时间较长
          -i 忽略大小写
           -n 指定显示多少行 -n 3 文件名
find 起始目标 查找目标 动作
          -name 根据名称 
          -type 根据类型 (d f l s b c p)
           -user 根据文件属主
            -group 文件属组
         –uid 
          -regex 支持正则表达式
           -perm 根据权限 mode 精确匹配 
                                     +mode 任何一类用户的权限满足即可 
                                     -mode 所有类别的用户都必须满足
                 find /home –perm -764 –exec chmod 766 {} \;
                 find /home –perm -764 -ok ls {}\;
                 find /home –perm -764 –exec cp {} /root \;
          -size 根据文件大小 一较为 特殊 <1k 或1m 都认为1k或1m
          -atime 访问时间 (天) –ctime(小时) 修改时间 -mtime(分钟)
          –amin (天)–cmin(小时) –mmin(分钟)
动作
              –ls 长格式显示
               –print 默认列出匹配的文件
               –exec 可加命令(没有提示信息) {}表示匹配到的文件 \;结尾
                –ok 加命令(会有提示信息)
查找时需要多个连接条件
     -a(and)优先级较-O 高
       -o (or) 或
         -not 或 ! 取反 优先级最高
用到多个连接时用到括号,括号要转义\(\) 
            !\(-user jing –a –group jing \)=!-user jing –a !-group jing
            find /tmp –user student –a ! –group student tmp目录下文件属主是student属组不是student的
tr
  tr a-z A-Z 文件名   所有的大写字母换成小写的
  tr -s "this" "TEST" 文件名 取代字串
 
uniq可检查文本文件中重复出现的行列,会删除相邻的行不相邻的不会删
          -c或--count   在每列旁边显示该行重复出现的次数。
          - d或--repeated   仅显示重复出现的行列。  
          -u或--unique   仅显示出一次的行列。
 
haed 显示文件文本中前几行
              head –n 15 文件名 显示文件中前15行(head -15 文件名)
tail 显示文本文件的最后几行
            tail –n 10 文件名 显示最后10行
          tail –f /var/log/message 会动态显示文件适用于记录档(ctrl+c退出)
wc指令可以计算文件的子元数、字数、或是列数,若不指定文件名称、或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据
         -c只显示字元数
         -l或--lines   只显示列数。
         -w或--words   只显示字数
sudo以系统管理者的身份执行指令即由 sudo 所执行的指令就好像是 root 亲自执行
su切换用户
由root用户切换
su jing 切换到用户jing 其环境变量不是jing本身的 而是root
su –jing 切换到用户jing 其环境变量是jing本身的
Last 显示系统开机以来或每月初登入者的讯息
文件存放在:/var/log/wtmp
            last –n 10 显示前十个用户的信息
lastb 显示系统未登录成功的信息
 文件存放在:/var/log/btmp
lastlog 系统中每一个用户最近一次的登录信息
              lastlog –u 用户名 显示特定用户的
    watch –n 10 ‘last –n 10’ 动态监视前十个登录用户每10s会刷新一次
 mail:Linux系统每个用户都会有一个默认的邮箱,使用mail命令互相传递邮件 ,邮件保存在/var/spool/mail/用户名文件
v   用法:
T       mail  用户名[@hostname]
  输入主题和内容后,使用Ctrl+D结束
T  mail s 邮件主题  < /home/text.sh
  使用输入重定向将某文件内容作为邮件主体发给某用户
T用户收信时直接用mail命令就可以