linux 常用命令

来源:互联网 发布:面试软件项目介绍 编辑:程序博客网 时间:2024/06/08 15:07

find

  • find命令的一般形式为;

find pathname -options [-print -exec -ok ...]

  • find命令的参数;

-pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。

-print: find命令将匹配的文件输出到标准输出。

-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和;之间的空格。

-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

-type

查找某一类型的文件,诸如:

b - 块设备文件。

d - 目录。

c - 字符设备文件。

p - 管道文件。

l - 符号链接文件。

f - 普通文件。

sed

 基本概述

(1)基本介绍

sed是一款流编辑工具,用来对文本进行过滤与替换工作,  sed通过输入读取文件内容,但一次仅读取一行内容进行某些指令处理后输出,sed更适合于处理大数据文件。
(2)工作原理

sed在处理文本文件的时候,会在内存上创建一个模式空间,然后把这个文件的每一行调入模式空间用相应的命令处理,处理完输出;接着处理下一行,直到最后。

(3)与vim的区别

vim需要通知处理文件的哪几行才会去处理,sed默认会处理文件的所有行,除非你告诉它不处理哪几行。

二, sed的基本语法

(1)sed [选项]  [定址commands] [inputfile]

关于定址:

定址可以是0个、1个、2个;通知sed去处理文件的哪几行。

0个:没有定址,处理文件的所有行

1个:行号,处理行号所在位置的行

2个:行号、正则表达式,处理被行号或正则表达式包起来的行

(2)

选项:

       --version            显示sed版本hao

       --help               显示帮助文档

       -n 关闭默认输出,默认将自动打印所有行

       -e 多点编辑,允许多个脚本指令被执行。

       -r 支持扩展正则+ ? () {} |

       -i 可以修改原文件,慎用!

       -f 支持使用脚本

命令:

       p 打印行

       d        删除行

       s           替换

       n替换第几个匹内容

       w另存为

       a         之后添加一行

       i         当前行之前插入文本

       y        替换匹配内容

pwd

Linux中用 pwd 命令来查看”当前工作目录“的完整路径。 简单得说,每当你在终端进行操作时,你都会有一个当前工作目录。 

在不太确定当前位置时,就会使用pwd来判定当前目录在文件系统内的确切位置。

1.命令格式:

pwd [选项]

2.命令功能:

查看”当前工作目录“的完整路径

3.常用参数:

一般情况下不带任何参数

如果目录是链接时

格式:pwd -P  显示出实际路径,而非使用连接(link)路径。

`dirname $0` 

  • 【`】,学名叫“倒引号”, 如果被“倒引号”括起来,  表示里面需要执行的是命令。
比如 `dirname $0`,  就表示需要执行   dirname $0  这个命令
  • 【“”】 , 被双引号括起来的内容, 里面 出现  $ (美元号: 表示取变量名)  `(倒引号: 表示执行命令)   \(转义号: 表示转义),   其余的才表示字符串。
  • 【’‘】,  被单引号括起来的内容, 里面所有的都表示串, 包括上面所说的  三个特殊字符。

  • 在命令行状态下单纯执行 $ cd `dirname $0` 是毫无意义的。因为他返回当前路径的"."。
  • 这个命令写在脚本文件里才有作用,他返回这个脚本文件放置的目录,并可以根据这个目录来定位所要运行程序的相对位置(绝对位置除外)。
在/home/admin/test/下新建test.sh内容如下:
  1. cd `dirname $0`
  2. echo `pwd`
然后返回到/home/admin/执行
  1. sh test/test.sh
运行结果:
  1. /home/admin/test
这样就可以知道一些和脚本一起部署的文件的位置了,只要知道相对位置就可以根据这个目录来定位,而可以不用关心绝对位置。这样脚本的可移植性就提高了,扔到任何一台服务器,(如果是部署脚本)都可以执行。




0 0
原创粉丝点击