红联Linux门户
Linux帮助

开始搞linux了,今天把学点的东西总结下

发布时间:2007-07-03 09:22:20来源:红联作者:orbirds
前段时间开始学搞Linux,后来也就没有怎么看过,最近一朋友又催促我看看,他也正看这个好东西.于是乎我又把这个好东西拣了起来.下面是今天看了点Linux的资料总结的一些常用命令,大家看看啊,欢迎批评指正,后续的还会贴出来.只是一下子学不了这么多!哈哈……

显示日期
#date 当前系统工作的用户
# who 自己当前的操作
#who am i
#whom


特殊字符
HISTFILE:用户贮存历史命令的文件
HISTSIZE:历史命令列表的大小
HOME:当前用户的用户目录
OLDPWD:前一各工作目录
PATH:BASH寻找可执行文件的搜索路径
PS1:命令行的一级提示符
PS2:命令行的二级提示符
PWD:当前工作目录
SECONDS:当前SHELL开始后所流逝的秒数
以前操作的命令
history

命令别名
alias-name
特殊字符
\! :显示该命令的历史编号
\# :显示shell激活后,当前命令的历史编号
\$ :显示一个$符号,如果当前用户是root则显示#符号
\\ :显示一个反斜杠
\d :显示当前日期
\h :显示运行该shell的计算机主机名
\n :打印一各换行符,这将导致提示符跨行
\s :显示正在运行的shell的名称
\t :显示当前时间
\W :显示当前工作目基准名
\w :显示当前工作目录
\u :显示当前用户的用户名

例如 :PS1="\d"
将使提示符变成显示日期

通配符
? :表示该位置可以是一个任意的单个字符
* :表示该位置可以是若干个任意字符
[charset]:表示替代charset集中的任何单个字符
例如:
rm a*out*tmp? 该命令可以删除一系列临时性的输出文件,如ab.out.temp1、ab.out.temp1等


文件显示的命令
显示指定工作目录中所包含的内容的指令是ls
方法:
ls [选项][文件目录列表]
-a :显示所有文件及目录,"."开头的不会显示
-c :按列输出,纵向排序
-x :按列输出,横向排序
-l :除文件名外,饿将文件状态、权限、拥有者、文件大小等信息详细列出
-t :根据文件建立时间的先后次序列出
-A:同 -a,但不列出“.”及“..”父目录
-X:按扩展名排序显示
-R :递归显示下层子目录
-help :显示帮助信息
-version:显示版本信息

linux支持多种文件类型,每一类用一个字符来表示,
常规文件
d :目录
b :块特殊设备
c :字符特殊设备
p :有名管道
s :信号灯
m :共享存储器

查找\排序及显示指定文件内容的命令
1、查找文件
#find[目录列表] [匹配标准]
目录列表:希望查询文件或文件集的目录列表,目录间用空格分隔
匹配标准:希望查询的文件的匹配标准或说明.
-name文件 :要找的文件包括在引号中,可以使用通配符*和?
-perm模式 :匹配所有模式微指定数字型模式值的文件,不仅仅是读、写和执行,,所有模式都必须匹配,如果在模式前是负号,表示采用除这个模式外的所有模式
-type x :匹配所有类型为X的文件。x和c(字符特殊),b(块特殊),d(目录),p(有名管道)。|(符号连接),s(套接文件)或f(一般文件)
-links n :匹配所有连接数为n的文件
-user用户号:匹配所有用户序列号是前面所指定的用户序列号的文件,可以是数字型的值或用户登陆名
-atime n :匹配所有在前n天内访问过的文件
-mtime n :匹配所有在前n天内修改过的文件
-newer文件 :匹配所有修改时间比file文件更新的文件
-size n :匹配所有大小为n块的文件(521字节块,若k在n后,则为1K字节块)
-print :显示整个文件路径和名称。一般来说,都要用-print,如果没有这个参数
通过文件名查找
例如:#find / -name httpd.conf -print
根据部分文件名查找
#find / -name *http* -print
根据文件的特征结构查询
#find /etc -size -2500c -print

显示文本文件内容:
cat
-b :计算所有非空输出行,开始为1
-e :在每行末尾显示$符号
-n :计算所有输出行,开始为1
-s :将相连的多个空行用单一空行代替

查找文件内容
grep
-v :列出不匹配串或正则表达式的行
-c :对匹配的行计数
-l :只显示包含匹配的文件的文件名
-h :抑制包含匹配文件的文件名的显示
-n :每个匹配行只按照相对的行号显示
-i :产生不区分大小写的匹配,缺省状态是区分大小写

排序命令
sort

比较文件内容的命令
1、comm
2、diff [参数] 原文件 目标文件
参数:
a :将所有文件当作文本文件来处理
b :忽略空格造成的不同
B :忽略空行造成的不同
q :只报告什么地方不同,不报告具体的不同信息
h :利用试探法加速对大文件的搜索
i :忽略大小写的变化
l :用pr对输出进行分页
r :在比较目录时比较所有的子目录
s :两个文件相同时才报告
v :在标准输出上输出版本信息并推出


文件复制:
cp
-a :在备份中保持尽可能多的原文件结构和属性
-b :作将要覆盖或删除文件的备份
-f :删除已存在的目标文件
-i :提示是否覆盖已存在的目标文件
-p :保持原先文件的所有者,组权限和时间标志
-r :递归拷贝目录,把所有非目录文件当普通文件拷贝
-R :递归拷贝目录

文件删除 :
rm
-r :删除文件列表中指定的目录,若不用此标志则不能删除目录
-I :指定交互模式。在执行删除前提示确认。任何以Y开始的响应都表示肯定,其他则表示否定
-f :指定强行删除模式。通常,在删除文件权限可满足时rm提示,本标志强迫删除,不用提示
-V :在删除前回显文件名
-- :指明所有悬项结束,用于删除一个文件名与某一选项相同的文件,例如,假定偶然建立了名为-f的文件,又打算删除它,命令rm -f不起任何作用,因为-f备解释成标志而不是文件名,而命令rm -- -f能成功地删除文件

#rm -R * 删除该目录下所有文件


移动文件
mv
-f :通常情况下,目标文件存在但用户没有写权限时,mv会给出提示,本选项会使mv命令执行移动而不给出提示
-i :交互模式,当移动的目录已存在同名的目标文件名时,用覆盖方式写文件,但在写入之前给出提示


文件内容统计命令
wc
-c :统计字节数
-l :统计行数
-w :统计字数


命令的输入和输出
在linux 系统中,执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),通常对应终端的键盘,标准输出文件(stdout)和标准错误输出文件(stderr),这两个文件也都对应终端的屏幕,进程将从标准输入文件
中得到输入数据,将正常输出数据输出到标准输出文件。而将错误信息送到标准错误文件中。linux系统为输入、输出的传送引入了另外两种机制,即输入/输出冲定向和管道。
1、输入重定向
输入重定向时把命令或可执行程序的标准输入重定向到指定的文件中,输入重定向主要用于改变一个命令的输入源,特别时改变那些需要大量输入的输入源。另一种输入重定向成为here文档,它告诉shell当前命令的标准输入来自命令行。here文档的重定向操作符使用“<<”.它将一对分隔符(!...!)之间的正文重定向输入给命令.由于大多数命令都以参数的形式在命令行上指定输入文件的文件名,所以输入重定向并不经常使用,尽管如此,当要使用一个不接受文件名作为输入参数的命令,而需要的输入内容又存在一个文件里时,就能用输入重定向解决问题.
2、输出重定向
输出重定向是指把命令或可执行程序的标准输出或标准错误输出重新定向到指定文件中。这样,该命令的输出就不显示在屏幕上,而时写入到指定文件中。
输出重定向的一般形式为:
命令>文件名
3、管道
格式:|
将一个程序或命令的输出作为另一个程序或命令的输入,有两种方法,一种时通过一个临时文件将两各命令或程序结合在一起,另一种是linux所提供的管道功能。这种方法比前一种方法更好。
管道可以把一系列命令连接起来,这意味着第一个命令的输出会作为第二个命令的输入通过管道传给第二个命令,第二个命令的输出又会作为第三个命令的输入,依次类推,显示在屏幕上的是管道行中最后一个命令(如果命令行中未使用输出重定向)

例如:# ls -l | wc -l


4、命令的替换
命令格式:command1 `command2`(反单引号)
例如:$ cd `pwd`
该命令将pwd命令列出的目录作为cd命令的参数,结果仍然是停留在当前目录下.
$count=`expr 3+4`相当于命令 $count=7
文章评论

共有 2 条评论

  1. yuxing 于 2007-07-03 17:33:50发表:

    不好意思,字打错了。希望作者继续努力!
    领略linux的乐趣!相信自己!

  2. yuxing 于 2007-07-03 17:32:42发表:

    很好,希望组这继续努力!