Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6465248
  • 博文数量: 579
  • 博客积分: 1548
  • 博客等级: 上尉
  • 技术积分: 16635
  • 用 户 组: 普通用户
  • 注册时间: 2012-12-12 15:29
个人简介

http://www.csdn.net/ http://www.arm.com/zh/ https://www.kernel.org/ http://www.linuxpk.com/ http://www.51develop.net/ http://linux.chinaitlab.com/ http://www.embeddedlinux.org.cn http://bbs.pediy.com/

文章分类

全部博文(579)

文章存档

2018年(18)

2015年(91)

2014年(159)

2013年(231)

2012年(80)

分类: LINUX

2012-12-17 18:53:17

 1,rpm
           redhat 上安装 rpm 文件:
           #rpm -ivh libXX

 2. Ubuntu 11.10下如何设置主机名
           主机名存放在/etc/hostname中 ,sudo gedit /etc/hostname 修改后保存

背景基础: 

  文件命名规则

  1、除了/之外,所有的字符都是合法的。

  2、 有些字符最好不用,如空格 制表符 退格符 和字符@#&-

  3、 避免使用 . 作为普通文件名的第一个字符

  4、 大小写敏感

 

命令格式

命令格式  :命令 –选项 参数  例子:ls –la /etc

说明:1)当有多个选型时 可以写在一起

  2)两个特殊的目录 和 ..,分别代表当前目录和当前目录的父目录

命令有两种

 

 Root:(只有root可以执行的命令所放置的目录)

/sbin super binary

/usr/sbin  user/super binary

All  users:(所有用户可以执行的命令所放置的目录)

/bin

/usr/bin

 

Bin-binary 二进制 

Linux系统中 所有东西都是文件(二进制文件),,,包括(命令,软件,网页,视频,压缩包等)。

 

(一) 文件处理命令

1、命令名称:ls(英文原意 list

命令所在路径:/bin/ls

执行权限:所在用户

功能描述:显示所有目录文件

语法:ls  选项[-ald]  [文件或目录]  例子:ls –a /

-a 显示所有文件 (包括隐藏文件) a-all

-l 详细信息显示 l-long(长格式显示)

        -d 查看目录属性

 

 例 ls –l / 得到 文件详细信息 如:drwxr-xr-x  (其中第一个字符 是文件类型 )

 如:drwxr-xr-x   2          root     root     4096    10-01 20:52  bin

   2-硬连接数   所有者  所属组 文件大小 创建或修改最后时间 文件名

 

  文件大小数字 是指数据块 block  512字节 存储数据的最小单位

文件类型: (目录directory

   - (二进制文件)

link)软连接文件 等

文件权限:        Rwx 表示 read  write execute (执行)

 

三类用户:

Rwx       r-x                 r-x

 所有者u   所属组group 其他人others

useronwer 可以转让)

 

2cdchange directory

 命令名称:cd

 所属路径:shell 内置命令

 执行权限:所有用户

 语法:cd[目录]

 功能描述:切换目录

 范例:$cd / 切换到根目录  $cd ..回到上一级目录

3pwd

命令名称:pwd  (print working directory )

 所属路径:/bin/pwd

 执行权限:所有用户

 语法:pwd

 功能描述:显示当前所在的工作目录

 范例:$pwd     /etc/rc5.d

4touch

命令名称:touch

 所属路径:/bin/touch

 执行权限:所有用户

 语法:touch [文件名]

 功能描述:创建空文件

 范例: $ touch newfile

5mkdir

命令名称:mkdir (make directory)

 所属路径:/bin/mkdir

 执行权限:所有用户

 语法:mkdir

 功能描述:创建新目录

 范例:$ mkdir newdir 

 

5cp

命令名称:cp (copy)

 所属路径:/bin/cp

 执行权限:所有用户

 语法:mkdir

 功能描述:复制文件

 范例:$ cp file1 file2 dir1 (将文件file1 file 2复制到目录dir1 。。)

   $ cp –R dir1 dir2 (将dir1下的所有文件复制到dir2下  cp –R/etc   /test

 

 

5mv

命令名称:mvmove

 所属路径:/bin/mv

 执行权限:所有用户

 语法:mv []

 功能描述:移动文件 改文件名

 范例:$ mv file1 file3(将当前目录下的文件file1更名为file3

   $ mv file2 dir2(将文件file2移动到目录dir2下)

 

5rm

命令名称:rmremove

 所属路径:/bin/rm

 执行权限:所有用户

 语法:rm –r [文件或目录]

 -r 删除目录

 功能描述:删除文件

 范例:$ rm file3  (删除文件file3,会提示确认删除?  rm –f 文件名 强制删除)

   $ rm –r dir1  (删除目录dir,提示确认删除? $ rm –rf dir1  强制删除目录)

   $ rmdir  删除空目录

 

有时候移动复制 移动 会时间长  按ctrl+C 可以终止

 

 

6cat

 

命令名称:catconcatenate and display files

 

所在路径:/bin/cat

 

执行权限:所有用户

 

语法:cat [文件名]

 

功能:查看显示文件内容

 

范例:$ cat /etc/issue

 

$ cat /etc/services

 

 

 

6more

 

命令名称:more

 

所在路径:/bin/more

 

执行权限:所有用户

 

语法:more [文件名]

 

 

 

(空格)或 f    显示下一页

 

 

 

enter 显示下一行

 

(q 或者Q) 退出

 

功能:分页显示文件内容

 

范例:$ more /etc/services

 

 

 

7head

 

命令名称: head

 

所在路径:/bin/ head

 

执行权限:所有用户

 

语法:head –num [文件名]

 

功能:查看显示文件前几行

 

范例:$ head -20 /etc/services

 

8tail 

 

用法同head 

 

查看文件最后几行

 

例子:$ tail -3 /etc/services

 

$ tail –f /etc/services 查看动态文件信息(用于监视日志文件 发生变化 默认十行)

 

9ln

 

命令名称: ln (link)

 

所在路径:/bin/ln

 

执行权限:所有用户

 

语法 :

 

 

 

ln –s [源文件] [目标文件]

 

  -s 创建软连接

 

功能: 

 

范例:$ ln –s /etc/issue  /issue.soft (创建文件/etc/issue的软连接/issue.soft

 

 

 

软连接 lrwxrwxrwx (权限) 类似于windows的快捷方式

$ ln /etc/issue  /issue.hard (创建文件/etc/issue的硬连

/issue.hard

硬连接 类似windows 拷贝(大小 权限都不变)  不同点是 同

步更新Linux 中内核处理任何东西都要有一个数字标记(文件

必须有一个 inode  i节点)


文件权限管理管理命令

1chmod 

命令名称:chmodchange the permission mode of a file

所在路径:/bin/chmod

执行权限:所有用户

语法 :

 

Chmod[{ugo}{+-=}{rwx}] [文件或目录]

 

Chmod [mode=421] [文件或目录]

功能: 

改变文件或目录权限

范例:

$ chmod g+w file1(赋予文件file1所属组写权限)

$ chmod 777 dir1 (设定目录dir1为所有用户具有全部权限)

chmod u+wxchmod g+rw chmod o-rchmod o=rwx

重点:用数字对应权限(r-4w-2x-1rwxr-xr--    ——754

752—— rwxr-x-w-

注:Su –用户名  (切换用户)

 

文件:r-catmoreheadtailw-echovix-命令、脚本

目录:r-ls;w-touchmkdirrmx-cd

注意:对文件有写权限只有当目录(rx)必须有写权限才能写进去

 

 

 

 

文件权限目录总结

 

代表字符

权限

对文件的含义

对目录的含义

R

读权限(cat more head tail

可以查看文件的内容

可以列出目录中的内容

W

写权限(echo vi

可以修改文件的内容

可以在目录中创建、删除文件

X

可执行(命令 脚本)

可以执行文件

可以进入目录

 

9chown

命令名称:change file ownership

所在路径:/bin/ chown

执行权限:所有用户

语法 :

Chown [用户] [文件或目录]

 

功能:改变文件或目录的所有者 

范例:$ chown nobody file1(改变文件file1的所有者为nobody(系统默认存 在))

 

注:useradd 用户名  passwd 密码 即可添加正确用户

9chgrp

命令名称:change file group ownership

所在路径:/bin/ chgrp

执行权限:所有用户

语法 :

Chown [用户组] [文件或目录]

 

功能:改变文件或目录的所属组 

范例:$ chgrp adm file1(改变文件file1的所属组为adm(系统自带))

9umask

背景:我们在创建目录或者文件时产生默认权限

命令名称:umask

所在路径:/bin/ umask

执行权限:所有用户

语法 :umask [-S]

-S rwx形式显示新建文件或目录缺省权限

功能:显示 设置文件的缺省权限 

范例:$ umask –S(结果:u=rwx,g=rx,o=rx

一般用umask 显示结果为0022

0- 特殊权限位 022-用户权限位,权限掩码值

 

数字显示计算:

 

777

—  022

— ————

 755(用户权限)

用 umask 027 可以改名默认文件权限为750(其他人o无任何权限)

Linux权限规则:

缺省创建的文件不能授予可执行x权限(所有真正touch 文件名 时显示文件权限为-rw-r-r--

 

 

文件搜索命令

 

1、 which

 

命令名称:which

 

命令所在路径:/user/bin/which

 

执行权限:所有用户

 

语法:which [命令名称]

 

功能:显示系统命令所在目录

 

范例:$ which ls

 

区别: which  可以提供这个命令的别名信息

 

  Whereis :可以提供这个命令的帮助信息

 

2、 find(比较复杂命令)

 

命令名称:find

 

命令所在路径:/user/bin/find

 

执行权限:所有用户

 

语法:which [搜索路径] [搜寻关键字]

 

功能:查找文件或目录

 

范例:$ find /etc/ -name init(在目录/etc中查找文件init

 

  $ find / -size  +204800(在根目录下查找大于100MB的文 件) 

 

204800数据块100MB=102400KB=204800

 

Block数据块   512字节=0.5KB

 

$ find /home –user samlee(在根目录下查找所有 者为 samlee的文件)

 

注:不要再根目录下查找。。(占用消耗很大资源)

 

通配符:*  匹配任意字符  init*(包括0个字符)

 

?用来匹配单个字符

 

·时间查找:1、天:ctime atimemtime

 

 2、分钟:cminaminmmin

 

cchange改变;表示文件属性被修改过(所有者、所属 组、权限)

 

a-access 访问

 

m-modify 表示文件内容被修改过

 

-之内 +超过  例如:find /etc –mmin -120 

 

1、连接符  -a and  逻辑与   -o  or   逻辑或   

 

-type 文件类型 (二进制文件;l软连接文件;目录) 

 

2、连接符(固定格式) find ……-exec 命令 {}  \;

 

解释:{ }find 查询的结果集;

 

\  转义符 符合命令使用本身的含义;

 

?  分号;表示结果结束语句

 

·i节点查找(用来删除特殊文件名)

 

Ls –i(显示i节点)

 

Find .inum 16(查找)

 

Find .inum 16 –exec rm {} \;(删除节点为16的文件)

 

例:find /etc –name inittab –exec –l {} \;(查看inittab文件详细内容)

 

Find /home –user samlee –exec rm –rf {} \;(强制(rf)删 除用户 samlee

 

Find /etc –name inittab –ok rm { } \;(用ok询问防误删重要文件)

 

 

 

Find /etc –name init* -a –type f –exec ls –l {} \;(显示包含init二进 制文件详细信息)

 

3、 locateunix系统的命令速度很快)

 

命令名称:locatelist files in database

 

命令所在路径:/user/bin/locate

 

执行权限:所有用户

 

语法:locate [搜寻关键字]

 

功能:寻找文件或目录

 

范例:$ locate file (列出所有跟file相关的文件)

 

 

 

4、 updatedb

 

命令名称:updatedbupdate the slocate database

 

命令所在路径:/user/bin/updated

 

执行权限:root

 

语法:updatedb 

 

功能:建立整个系统目录文件的数据库

 

范例:updated

 

5、 grep

 

命令名称:grep

 

命令所在路径:/bin/grep

 

执行权限: All User

 

语法:grep [指定字串] [源文件

 

功能:在文件中搜索字串匹配的行并输出

 

范例:# grep ftp /etc/services



帮助命令

1man

命令名称:manmanual

命令所在路径:user/bin/man

命令执行权限:All User

语法:man [命令或配置文件]

更能:帮助

范例:$ man ls(查看ls命令的帮助信息)

$ man services(查看配置文件services的帮助信息)

2info

命令名称:infoinformation

命令所在路径:user/bin/info

执行权限:All User

语法:info [任何关键字]

功能:获得帮助信息

范例: $ info ls(查看ls指令的帮助信息)

(和man区别是呈现信息方式不同)

3whatis

命令名称:whatis apropos makewhatissearch the whatis  database for strings

命令所在路径:/user/bin/whatis apropos

/user/sbin/makewhatis

执行权限:All User

语法:whatis(apropos/makewhatis) [任何关键字]

功能:获得索引的简短说明信息 

范例:$ whatis ls  $ apropos fstab(相当于man -k

# makewhatis

建立whatisapropos搜索使用的数据库,当使用这两个命令发生错误时,就是whatis database没有建立

注:命令(如umaskls等) --help 显示命令选项设置信息

4、help

功能:查看shell内置命令的帮助 

注:linux笼统划分:硬件  内核 shell(是一种软件)

命令和配置文件重名:

Man 5 passwd 5指配置文件帮助)

Man bash

 

压缩解压命令

1gzip

命令名称:gzip (GNU zip)

所在路径:bin/zip

执行权限:All User

语法:gzip 选项 [文件]

功能:压缩文件

压缩后文件格式:.gz

注:1linux下的压缩文件windowswinRAR都可以压缩

windows下的压缩文件linux却不是都可以压缩

2gzip只能压缩文件 不能压缩目录(解决方法呢??)

3、不保留源文件

2gunzip

命令名称:gunzip=gzip -d

所在路径:/bin/gunzip

执行权限:All User

语法:gunzip 选项 [压缩文件]

功能:解压缩.gz的压缩文件

范例: # gunzip file1.gz

3tar

命令名称:tar

所在路径:bin/tar

执行权限:所有用户

语法:

(一、打包语法)

tar 选项 [-cvf] [目录]

-c  产生.tar打包文件

-v 显示详细信息

-f 指定压缩后的文件名

-z 打包同时压缩

(二、解压缩语法)

-x 解包.tar 文件

-v 显示详细信息

-f 指定压缩文件

-z 解压缩

功能:打包目录(把一个目录打包成文件)

压缩后文件格式:.tar.gz

范例:

(一)(已存在目录 newdir

# tar –zcf newdir.tar.gz newdir# tar –zcf new newdir

(打包后文件名.后缀)(被打包文件) (打包后文件名new默认后缀.tar.gz

$ tar –zcf dir1.tar.gz dir1(将目录dir1压缩成一个打包并压 缩的文件)

(二)(已存在目录包newdir.tar.gz)

 

如:tar –zxf newdir.tar.gz

分两步:gunzip newdir.tar.gztar –zf newdir.tar

5zipwindowslinux默认通用格式)

命令名称:zip

所在路径:/user/bin/zip

执行权限:所有用户

语法:zip 选项 [-r] [压缩后文件名称]

-r  压缩目录

功能:压缩文件或是目录

压缩后文件格式:.zip(和tar格式类似)

范例:

$ zip services.zip /etc/services(压缩文件)

$ zip –r newdir.zip newdir(压缩目录)

特点:1、和windows兼容最好的一种压缩格式

2可以解压缩目录(和tar区别)

5unzip

命令名称:unzip

所在路径:/user/bin/ unzip

执行权限:所有用户

语法:zip [压缩文件

功能:解压.zip的压缩文

范例:$ unzip tesx.zip

6bzip2

命令名称:bzip2

所在路径:user/bin/bzip2

执行权限:所有用户

语法:bzip2选项 [-K] [文件]

功能:压缩文件

压缩后文件格式:.bz2

范例:$ bzip2 –k file1 ( -k保留源文件)

特点:压缩比惊人!!适合压缩大文件

7bunzip2

命令名称:tar

所在路径:user/bin/bzip2

执行权限:所有用户

语法:bunzip选项 [-K] [压缩文件]

-k解压后保留源文件

功能:解压缩

范例:$ bunzip2 –k file1.bz2

总结:.gz    .tar.gz .zip .bz2

 

网络通信指令

1write

命令名称:write

所在路径:/user/bin/write

权限:All User

语法:write <用户名>

功能:向另一个用户发消息,以CTRL+D 结束

范例:#write samlee

2wall

命令名称:wall

所在路径:/user/bin/ wall

权限:All User

语法:wall [message] [文件名]

功能:向所有用户广播信息

范例:# wall Happy New Year

 

3ping

命令名称:ping

所在路径:/user/sbin/ ping

权限:root

语法: ping ip地址

功能:测试网络连通性

范例:# ping 192.178.22.2;ping 127.0.0.1(回环地址)

# ping –c 4 192.169.9.2(发送icmp请求包次数4) 

# ping –s 60000 192.293.93.3  (发送icmp包大小是60000

 

Ctrl+C终止

4ipconfig

命令名称:ipconfig

所在路径:/user/sbin/ ipconfig

权限:root

语法: ping 选项 [-a] [网卡设备标识]

-a   显示所有网卡信息

功能:查看网络设置信息

范例:# ipconfig –a(查看网卡信息)

 

5shutdown

命令名称:shutdown

所在路径:/user/sbin/ shutdown

权限:root

语法:shutdown

功能:关机

范例:# shutdown –h now

6reboot

命令名称:reboot

所在路径:/user/sbin/ reboot

权限:root

语法:reboot

功能:重启系统

范例:# reboot

 

Shell 应用技巧

1bash应用

Tab 补齐文件名

Clearctrl+L 清屏

   ctrl+D退出广播(wall

Ctrl+u 删除光标前面的命令行

  History 显示命令列表 按方向键上和下可以查找以前执行过的 命令

2、命令别名:

范例:alias copy=cp(一个命令,复制)

alias drm=”rm -rf”(命令的组合)

unalias drm(删除命令别名)

3、输入/输出重定向(输入不从键盘,输出不到显示器)

同标准I/O(如键盘是标准输入,显示器是标准输出)一样,shell对于每一个进程预先定义3个描述字(0 12)。分别对应于:

0 (STDIN)标准输入

1 (STDOUT)标准输出

2 (STDERR 标准错误输出

范例:0>  输出重定向:ls –l /tmp > /tmp.msg

Date  >>  /tmp.msg

1< 输入重定向:wall < /etc/motd(将motd这个文件内容广播出去)

2> 错误输出重定向:cp –R  /user /backup/user.bak 2> /bak.error2的含义是避免和0重复符号>:备份user内容到backup目录下的user.bak同时产生错误日志文件bak.error

再如:ls /kdls 2> ls.errkdls不存在)

Cat ls.err(结果:ls :/kdls: No such file or directory

 

管道

管道:将一个命令的输出传送给另一个命令,作为另一个命令的输入。

使用方法:命令1|命令2|命令3|……|命令n

范例:ls –l /etc | more

Ls –l /etc | grep init

Ls –l /etc | grep init | wc –lwc –l 查看一个文件多少行(或者统计文件个数)如:wc –l etc/services

(统计在etc下包含关键字init文件的个数)

 

命令连接符

;用;间隔的各个命令按顺序依次执行

如:pwd ls date

&& 命令执行存在逻辑与关系,只有&&前面的命令执行成功后,它 后面的命令才能执行

如:write mary < /home/sam/love.txt &&rm /home/sam/love.txt

(第一步发送成功情书后第二步销毁)

|| 前后命令执行存在逻辑或关系

write mary < /home/sam/love.txt ||mail mary /home/sam/love.txt

 

命令替换符

命令替换:将一个命令的输出作为另一个命令的参数

格式:命令1 `命令2`

范例:ls –l `which touch```是命令替换符,键盘数字1旁边符号)

# which touch    ls –l /bin/touch

阅读(986) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~