免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1854 | 回复: 12
打印 上一主题 下一主题

菜鸟的学习经验——欢迎指正 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-04-05 14:37 |只看该作者 |倒序浏览
我今天和老师学了点Linux 的基础知识  觉得挺有收获  所以我想这个对所有象我一样的菜鸟一定很有用
所以就整理了一下,希望能够与大家共同进步 将来能够为祖国四化贡献力量

· 文件/目录许可

使用 ls –l 查看文件/目录的许可
使用命令chown改变文件/目录的所有权
使用chgrp命令修改文件/目录的组
使用chmod改变文件/目录的访问特权。

(1)
运行命令 :
ls -l
显示
-rwxrw-r-x 1 root root 512 Feb 6 21:11 t.txt
其中含义如下:
  -rwxrw-r-x :文件存取许可。
          1       :  链接编号
     root        :  拥有者
     root        :  组
其余依次是文件大小,修改时间,文件名

使用touch命令新建文件。如:touch  t.txt

                4        2        1
用户        Set-uid
        (4)        读(r)        写(w)        执行(x)
组        Set-gid
        (2)        读(r)        写(w)        执行(x)
其他        Sticky       
                -bit(1)    读(r)        写(w)        执行(x)
(Sticky-bit:要求系统在内存中保留可执行程序的镜像,降低大程序启动时间的外部措施。)
其中 数字4代表读2代表写1代表执行  同样 r w x 分别代表读 写 执行

例如         d  rwx  r-x  --x
第一位:它是目录
2-4位 :用户   所具有的权限
5-7为 :组       所拥有的权限
8-10为:其他用户/组 的权限

(2)chown命令
命令格式如下:
chown  用户  文件/目录

   例如:chown lianxj  test.txt

或者用此命令:
chown   用户/组   文件/目录
   例如:chown lianxj.lianxj test.txt

或者用此命令:
chown  -R  用户/组   目录(目录下所有文件/目录)
   例如:chown –R lianxj.lianxj  /plans

(3)chgrp命令

使用方式:chgrp [-R] groupname name ( name 可为文件名或目录名 )
例如:chgrp lianxj file1
将文件 file1 的群组拥有权,改为 lianxj群组。

(4)chmod命令

两种方法如下:
数字的形式,字符串的形式
   
   第一种:读:4   写 :2  执行:1
   chmod 755 test.txt
   拥有者:4+2+1=7  读写执行
   所处的组:4+1=5   读执行
   其它:4+1=5          读执行

(1)chmod 666 test.txt
  -rw-rw-rw-     。。。。 test.txt
(2)chmod 7666 test.txt
   -rwSrwSrwT   。。。。test.txt
(3)chmod 555 test.txt
     -r-xr-xr-x   。。。。test.txt
(4) chmod 7555 test.txt
      -r-sr-sr-t   。。。。test.txt(如果具有可执行权限会由x变成小写s,t。


第二种:
   拥有者(用户):u     组:g  其它:o
   所有用户:用 a 表示
   chmod u+rx,g+r,o+x test.txt  加号代表:使之拥有某权限
   chmod u+x,g-r,o-x test.txt
   chmod a+rx,u+w test.txt
   
   chmod u+s,g+s,o+t test.txt
   chmod u-s,g-s,o-t test.txt  此句会变成原来模式s的位变成x,t的位会变成x

链接问题

硬链接(占用空间)
   ln source dist
例:ln test.txt plan
   -rwxrw-r-x
   plan和原文件具有相同大小,相同的设置。

软链接(不占用空间)
   ln –s  source dist
例如:ln –s test.txt plan
   
改变对硬链接的所有权或许可,影响到原文件。
    chown  lianxj plan
   然后用ls –l比较修改前后的不同(两个都变)。
对与软链接则不同。(互不影响)
    chown  lianxj plan
   只改变了plan的拥有者,对原文件没有起作用。但是lianxj用户不能写plan,除非文件在lianxj所属的目录。

对软链接文件的许可设置会对plan文件产生新设置。
   lrwxrw-r-x   ……..          plan->;test.txt
   chmod  666 plan(对原文件起作用,不对plan起作用)
  -rw-rw-rw-   ……..          test.txt
对于硬链接无论对哪个文件进行chmod操作,都会对两个文件起作用。


·常用命令

常用命令(1)-文件和目录的基本命令

目录和文件命令时使用的通配符
  如ls  ,cp,find等命令
*        匹配任意顺序的一个或多个字符
?        匹配任意单个字符
[ ]        匹配一组封闭字符或范围
t*        以t为开头的文件
t*t        以t为开头以t为结尾的文件
t*l*s.c        以t为开头,包含l,以s.c结尾的文件
?.h        文件名以一个字符开始,以.h结尾的文件。
Doc[0-9]        名为Doc0到Doc9的文件
Doc[a-z]        名为Doca到Docz的文件


正则表达式基础

.        匹配任意单个字符
*        匹配一个或多个字符
^        匹配一行的开头
$        匹配一行的结尾
\<        匹配一个词的开头
\>;        匹配一个词的结尾
[ ]        匹配一组封闭字符或一定范围内的字符
[^]        匹配没有包含在内的任意字符
\        跟随符号的字面含义
例如:
   grep foo data.txt
   grep ‘^foo’ data.txt
   grep ‘hello$’ data.txt
   grep ‘\<ki’ data.txt
   grep ‘wee\>;’ data.txt
   grep ‘C..h’  data.txt
   grep  ‘B[A-Za-z]h’ data.txt

接着我要介绍如下命令
cat
chmod
chown
clear
cmp
cp
cut
diff
du
file
find
grep
head
ln
ls
mkdir
mv
pwd
rm/rmdir
stat
tail
touch
wc
whatis/whereis/which




cat [-AbeEnstTuv] [--help] [--version] fileName
命令的作用:显示文件内容
参数:
   -n 或 –number: 由 1 开始对所有输出的行数编号
   -b 或 --number-nonblank: 和 -n 相似,只不过对于空白行不编号
   -s 或 --squeeze-blank :当遇到有连续两行以上的空白行,就代换为一行的空白行

例子:
cat -n textfile1 >; textfile2
    把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
cat -b textfile1 textfile2 >;>; textfile3
    把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3

(2)clear
指令:clear 用途:清除屏幕用。
使用方法:输入 clear。

(3)cmp
cmp –ls file1 file2(比较两文件内容)
参数:
   -l  :  输出不同字符的位置,并输出字符的不同之处。
   -s :  如果文件相同返回0,不同返回1,出错返回 >;1的数字
例如:
   文件file1的内容为:   this is file 1.
   文件file2的内容为:   this is file 2.
  cmp file1  file2
  会显示如下信息:file1 file2 differ: char 14,line 1
  cmp –l file1 file2
  会显示如下信息:14 61 62  

(4)cp
名称:cp 此命令的使用权限为所有使用者 通用
cp [options] source dest
cp [options] source  directory  
-a 尽可能将档案状态、权限等资料都照原状予以复制。
-r 若 source 中含有目录名,则将目录下之档案依序拷贝至目的地。
-f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。
范例:
   将档案 aaa 复制(已存在),并命名为 bbb
    cp aaa bbb
    将所有的C语言程式拷贝至 test 目录中
    cp *.c  test/

    cp –r test1 test2(test1目录下的文件复制到test2(如果不存在会生成test2目录,复制文件到test2目录下)目

录。如果存在test2目录会把整个test1放到test2。

(5)cut
名称:cut  使用权限:所有使用者  
用法:cut -cnum1-num2 filename
显示每行从开头算起 num1 到 num2 的文字。
cat test.txt  
cut -c0-6 test.txt     ## 输出每一行的前 6 个字元 test 2 this i

(6)diff
diff –iqb file1 file2
与cmp相比cmp以字符为单位比较,diff以行为单位比较。

(7)du
du –ask filename或不写
-a  逐步显示每个目录和文件大小
-s  显示合计数
-k   所有文件的kb字节数

(file
file filename
  确定文件类型

(9)find
find path –type fdl –name pattern 其他选项
  path 指路经
  -type fdl  f 指文件 d 指目录  l 指链接
  例如:
  find .  -type f  -name  *.txt
  find .  -type f  -empty(当前目录结构下所有空文件。)
(10)head
head  -count | -n number filename
  显示文件的头几行
例如:
   head -2  test.txt   
会显示头两行的内容

(11)ls
使用方式 : ls [-alrtAFR] [name...]
-a 显示所有档案及目录 (ls内定将档案名或目录名称开头为"."的视为隐藏档,不会列出) -l 档案名称,档案型

态、权限、拥有者、档案大小等资讯详细列出 -r 将档案以相反次序显示(原定依英文字母次序) -t 将档案依

建立时间之先后次序列出
-A 同 -a ,但不列出 “.” (目前目录) 及 “..” (父目录) -F 在列出的档案名称后加一符号;例如可执行档则加 “*”,

目录则加 “/” -R 若目录下有档案,则以下之档案依序列出
例如:
   ls -al

(12)mkdir
创建目录
mkdir  dir
mkdir dir1 dir2 dir3

(13)mv
mv [options] source dest
   mv [options] source directory
   说明:将一个档案移至另一档案,或将数个档案移至另一目录。
   参数:-i 若目的地已有同名档案,则先询问是否覆盖旧档。
   将档案 aaa 更名为 bbb :       mv aaa bbb
   将所有的C语言程式移至 Finished 子目录中 :  mv -i *.c  test/

(14)pwd
显示当前所处的位置
使用方法:输入pwd

(15)rm
使用方式:rm [options]  name
说明:删除档案及目录。
  -i 删除前逐一询问确认。
  -f 即使原档案属性设为只读,也直接删除,无需逐一确认。
  -r 将目录及以下之档案亦逐一删除。
删除前逐一询问确认 :  rm -i *.c
将 test 子目录及子目录中所有档案删除 :   rm -rf  test(结果test下文件和test目录被删除)

(16)rmdir
删除目录命令-只有这目录空时删除成功。
   rmdir test
   rmdir –p test(如果删除test目录后test所处的目录也空,这是会删除test的父目录。
   例如:test1目录下有空目录test2
   rmdir –p  test1/test2
(17)stat
显示文件或目录的各种统计
stat file
例如:
  stat test.txt

(1tail
tail  -count | -fr filename
  显示文件尾的几行
  -f  监视文件,写新数据停止监视用ctrl+c退出
  -n 行数
例如:
   tail -10  test.txt / tail –n 10  test.txt

(19)touch
更新文件或目录的时间戳
touch file or directory
如果文件不存在新建空文件
touch test.txt(如果有会更新时间,如没有会生成一个文件。可以用stat或ls -l命令查看)

(20)wc
wc –lwc filename
计算文件行数,字符数,单词数。
-l  显示行数
-w 显示单词数
-c  显示字符数

(21) whatis/whereis/which
显示命令的基本信息
例如:
  whatis ls
  whereis find
  which cd

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2003-04-05 17:21 |只看该作者

菜鸟的学习经验——欢迎指正

平心而论,你这一个总结几乎包含了我平时用的80%的命令.呵呵.

论坛徽章:
0
3 [报告]
发表于 2003-04-05 17:25 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2003-04-05 22:18 |只看该作者

菜鸟的学习经验——欢迎指正

[quote]原帖由 "alstone"]平心而论,你这一个总结几乎包含了我平时用的80%的命令.呵呵.[/quote 发表:


呵呵,又一个“80/20”定理的实践者。

另:支持楼主的原创。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2003-04-05 23:06 |只看该作者

菜鸟的学习经验——欢迎指正

原帖由 "弱智" 发表:


呵呵,又一个“80/20”定理的实践者。

另:支持楼主的原创。

什么是“80/20”定理啊,弱智兄?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
6 [报告]
发表于 2003-04-06 00:46 |只看该作者

菜鸟的学习经验——欢迎指正

呵呵,我也说不好。

比如:

80%的利润来自20%的商品

......


生活中这些80/20道理多呢。

论坛徽章:
0
7 [报告]
发表于 2003-04-06 01:33 |只看该作者

菜鸟的学习经验——欢迎指正

基本上是成本管理和风险控制的一个经典原理。

论坛徽章:
0
8 [报告]
发表于 2003-04-06 10:16 |只看该作者

菜鸟的学习经验——欢迎指正

谢谢各位高手对我的鼓励,我会更加努力!

论坛徽章:
0
9 [报告]
发表于 2003-04-06 22:51 |只看该作者

菜鸟的学习经验——欢迎指正

[quote]原帖由 "alstone"]平心而论,你这一个总结几乎包含了我平时用的80%的命令.呵呵.[/quote 发表:

呵呵.90%

论坛徽章:
0
10 [报告]
发表于 2003-04-07 00:28 |只看该作者

菜鸟的学习经验——欢迎指正

我一直没搞懂文件属性为x、s、t三者的区别
望高手指点
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP