[highwind] --- bashrc

仅供存放个人的配置文件,不要在本版发问。
回复
头像
highwind
帖子: 1362
注册时间: 2008-09-05 23:31
系统: LinuxMint17

[highwind] --- bashrc

#1

帖子 highwind » 2014-03-09 22:10

PATH="$PATH":.:/home/highwind/Program/Scripts/Bash (添加自定义路径)
alias ll='ls -l' (可用于简化命令)
PS1=”[\u][\w]\$“ (可用于更改提示符)
上次由 highwind 在 2014-03-10 8:11,总共编辑 2 次。
头像
highwind
帖子: 1362
注册时间: 2008-09-05 23:31
系统: LinuxMint17

Re: [highwind] --- bashrc

#2

帖子 highwind » 2014-03-10 7:12

记录已经使用过觉得好的命令,从没见什么程序像bash这样内容如此丰富,多学多用哟。

----------Bash Shell 学习记录1----------
ls -1 (数字1而不是字母l)
lsof (查看某路径<挂载点>的占用程序)
cp -b (备份复制)
cp -l (创建硬链接而非文件)(硬链接得在同一挂载点上)
cp -s (创建软链接而非文件)
cp -u (更新复制,仅复制新文件)
cp -p (复制并保留时间戳)
stat (查看某文件磁盘信息)
file (查看文件类型<文本,可执行或数据>)
cat -n (显示行号)
cat -b (只给文本显示行号)
cat -s (压缩至单空白行)
cat -T (制表符替换)
less -N (显示行号)<shift-G 跳转至文末>
mount -p (加密挂载)
df -h (用M,G等显示空间单位)
du -h (用M,G等显示空间单位)
du --max-depth= (设定统计深度)
sort -n (按数字而非字符排序)
sort -M (按月份时间排序)
sort -b (忽略起始的空白)
sort -r (逆序)
sort -t (指定字符范围内)
sort -k (指定字段范围内)
grep -v (反向选择)
grep -e (满足多个匹配)
grep -n (显示匹配行号)
grep -c (显示匹配行数)
grep [] (Unix正则表达匹配)
bzcat (不解压查看bz2中的文本)
gzcat (不解压查看gz中的文本)
zipnote (提取zip文件中的批注)
pwd -P (显示文件真实<无链接符>路径)
touch -- -god (用“--”,建立-开头的文件)
rm -- -god (同样用“--”,删除-开头的文件)
tar cf file.tar files (集合files建立一个tar文件)
tar xf file.tar (解开一个tar文件)
tar czf file.tar.gz files (集合files建立一个tar.gz文件)
tar xzf file.tar.gz (解压一个tar.gz文件)
tar cjf file.tar.bz2 (集合files建立一个tar.bz2文件)
tar xjf file.tar.bz2 (解压一个bz2文件)
gzip file (压缩file成gz文件)
gzip -d file.gz (解压一个gz文件)
上次由 highwind 在 2014-03-12 5:34,总共编辑 4 次。
头像
highwind
帖子: 1362
注册时间: 2008-09-05 23:31
系统: LinuxMint17

Re: [highwind] --- bashrc

#3

帖子 highwind » 2014-03-10 9:17

----------Bash Shell 学习记录2----------
文件对象类型:
- 代表文件
d 代表目录
l 代表链接
c 代表字符型设备
b 代表块设备
n 代表网络设备

文件最高权限666,目录777,umask设定为不想赋予之权限。
chmod [ugoa][+-=][rwxXstugo...]
chown 改变属主,属组
chgrp 改变属组

当某用户在/etc/passwd文件中指定某个组作为默认组时,用户不会作为该组成员再出现在/etc/group中!

只有为挂载的文件系统可以允许fsck修复工具,检查根目录时可借用LiveCD

扩展逻辑卷可以帮助扩展文件系统
头像
highwind
帖子: 1362
注册时间: 2008-09-05 23:31
系统: LinuxMint17

Re: [highwind] --- bashrc

#4

帖子 highwind » 2014-03-10 10:58

----------Bash Shell 学习记录3----------
echo -n (行末不换行)

变量赋值无空格

反引号,A=`XXX`,将XXX执行的输出结果赋给A

数据定向(A->B)
命令A > 数据B
命令B < 数据A
命令A | 命令B

$[ operation ] 可用于数值计算(但仅支持整数)
浮点运算:
1. R=`echo "scale=n;operation"|bc`(最外面是反引号,n代表小数位数,bc用于计算)
2. R=`bc <<EOF
options(scale=n)
statments(var1=?,var2=?)
expressions(var3=var1?var2)
EOF
`(反引号包裹的内联重定向,EOF作为文本标记符)

$?查看上个命令的退出状态码,而这正是if语句判断的依据
如果是0则继续允许then句段,否则elif或else或fi
test提供了比较判断功能
可使用
1. if test condition;then
commands
fi
2. if [ condition ] (注意方括号里面还有空格)
then
commands
fi

test数值比较(但注意浮点时的问题!!)
n1 -eq n2 (n1是否等于n2)
n1 -ge n2 (n1是否大于等于n2)
n1 -gt n2 (n1是否大于n2)
n1 -le n2 (n1是否小于等于n2)
n1 -lt n2 (n1是否小于n2)
n1 -ne n2 (n1是否不等于n2)
test字符串比较(@真是反人类的设计啊@)
str1 = str2 (str1是否相同于str2)
str1 != str2 (str1是否不同于str2)
str1 \< str2 (str1是否小于str2)注意得用\转义
str1 \> str2 (str1是否大于str2)注意得用\转义
-n str1 (str1是否长度非0)(主要用于防止变量空值导致的灾难,预判后再用)
-z str1 (str1是否长度为0)
另外注意test大小比较为标准ASCII顺序,但sort命令并不是!
test文件比较
-d file (是否存在且为目录)
-e file (是否存在)
-f file (是否存在且为文件)
-r file (是否存在且可读)
-s file (是否存在且非空)(删除前检查)
-w file (是否存在且可写)
-x file (是否存在且可执行)
-O file (是否存在且属于当前用户)
-G file (是否存在且为默认组及当前用户所有)
file1 -nt file2 (file1是否比file2新)
file1 -ot file2 (file1是否比file2旧)
最后,test1,test2之间可以用&&,||布尔运算连接
另外还有(())和[[]],有空再说吧。

bash有case语句用于多次判断

IFS用于设定字段分隔符

$0是脚本的完整路径,如果单独返回程序名可使用basename
$*多参数合一
$@多参数归一
shift参数移动,尤其适用于未知参数个数时,但小心参数值移除后无法恢复。

exec 1>testout 用于大量数据需要重定向时

推荐阅读链接:
http://community.linuxmint.com/tutorial/view/244
回复