您的位置:首页 > 运维架构 > Linux

Linux 学习笔记【1】

2014-02-26 14:11 441 查看
id username

:可以判断系统上面是否有此账号;

SUID:用户在此目录下的有效用户组(effective group)将会变成该目录的用户组。Ok,懂了!

dumpe2fs命令

dumpe2fs -h /dev/...
显示当前的磁盘状态

su -:加上"-"代表使用login-shell的变量文件读取方式来登录系统。

chage
修改与密码相关的数据 P415页

繁体中文转简体中文

繁体中文的utf8转成简体中文的utf8编码 iconv -f utf8 -t big5 filename(文件名) | iconv
-f big5 -t gb2312 | iconv -f gb2312 -t utf8 -o
dstfilename(目标文件名)

繁体中文的big5转成简体中文的utf8编码 iconv -f
big5 -t gb2312 filename(文件名) |
iconv -f gb2312 -t utf8 -o dstfilename(目标文件名)

** 求幂操作符

在一个变量前面加上$用来引用这个变量的值

重定向:

标准输入(stdin)
:代码为0,使用<或<<;

标准输出(stdout)
:代码为1,使用>或>>;

标准错误输出(stderr):代码为2,使用2>或2>>.

scriptname >filename
重定向 scriptname的输出到文件filename
中.
如果filename
存在的话,
那么将会被覆盖.
command
&>filename

重定向 command的stdout
和stderr
到filename
中.

command >&2

重定向 command的stdout
到stderr
中.

scriptname
>>filename

把 scriptname的输出追加到文件filename
中.
如果filename
不存在的话,将会被创建.

[i]<>filename

打开文件 filename
用来读写,
并且分配文件描述符i
给这个文件.
如果filename
不存在,
这个文件将会被创建.

将正确与错误数据输出到一个文件:

例:find /home -name .bashrc > list
2>&1

或:fine /home -name .bashrc &>
list

\<,\> 单词边界

使用grep+\<,\>可以严格的筛选单词

echo -n 不输出换行符

cd - 将会回到先前的工作目录。它使用了$OLDPWD环境变量。

~ home目录[波浪号,即~].相当于$HOME内部变量.~bozo是用户bozo的home目录,并且ls
~bozo将列出其中的内容.~/就是当前用户的home目录,并且ls ~/将列出其中的内容.

被一对双引号( " " )括起来的变量替换是不会被阻止的. 所以双引号被称为 部分引用,
有时候又被称为"弱引用". 但是如果使用单引号的话(' '
), 那么变量替换就会被禁止了, 变量名只会被解释成字面的意思, 不会发生变量替换. 所以单引号被称为全引用,
有时候也被称为"强引用".

使用let赋值

let a=16+5 # a=21

a=16+5 # a=16+5

a=`ls
-l`
#
把'ls
-l'的结果赋值给'a'

echo
$a
#
然而,
如果没有引号的话将会删除ls结果中多余的tab
和换行符.

echo
"$a"
#
如果加上引号的话,

那么就会保留ls结果中的空白符.

即:引用可以改掉echo不换行的“毛病”.

. "点"字符匹配. 当用作匹配字符的作用时,
通常都是作为正则表达式的一部分来使用, "点"用来匹配任何的单个字符.

去掉路径名,剩下文件名:`basename $0`

位置参数
$*
代表"$1c$2c$3c$4",其中c为分割字符,默认为空格键,所以代表"$1 $2 $3
$4",表示传入的所有的位置参数;

$# 代表后接的参数个数,表示传入的位置参数的个数;

$@ 代表"$1"、"$2"、"$3"、"$4"之意,每个变量是独立的(用双引号括起来);

{} 标记法提供了一种提取从命令行传递到脚本的最后一个位置参数的简单办法.
但是这种方法同时还需要使用间接引用.

args=$# #位置参数的个数

lastagr=${!args} 或 lastarg=${!#}(注:在Fedora 14下不行)

echo "The last argument is $lastarg!"

shift命令会重新分配位置参数,其实就是把所有的位置参数都向左移动一个位置.

$1 <--- $2, $2 <--- $3, $3
<--- $4, 等等.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: