Linux发展历史:
1) RedHat ---> 1.RedHat
2.CentOS
3.Fedora 桌面图形系统
rpm, yum 命令
2) Debian ---> 1.Debian
2.Ubuntu 桌面图形系统
3.Knoppix
apt-get, dpkg
3) Slackware --->
================================
使用find和wc命令统计代码行数
================================
wc -l `find . -name "*.js" | xargs`
查看当前目录下文件的个数 ls -l | grep "^-" | wc -l
查看当前目录下文件的个数,包括子目录里的。
ls -lR| grep "^-" | wc -l
查看某目录下文件夹(目录)的个数,包括子目录里的。
ls -lR| grep "^d" | wc -l
ls -l 长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)
grep "^-" 这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d
wc -l 统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数
=======================================
KB与KIB,free命令输出的是KB,不是KIB
=======================================
KB:
kilobyte(千字节),常写作KB或K,是一种资讯计量单位,现今通常在标示内存等具有一般容量的储存媒介之储存容量时使用。
1KB = 1,000Byte
1MB = 1,000KB
1GB = 1,000,000(106)KB
1TB = 1,000,000,000(109)KB
KIB:
Kibibyte是一种资讯计量单位,代表1024字节,即210字节,一般简称为KiB。Kibibyte是自来英文 kilo binary byte 的缩写,意思为“千位二进制字节”。
1KiB = 1,024Byte
1MiB = 1,024KiB
1GiB = 1,024MiB = 1,048,576 (10242)KiB
1TiB = 1,024GiB = 1,073,741,824 (10243)KiB
Byte:
字节,英文名称是Byte。Byte是Binary Term的缩写。一个字节代表八个比特。它是通常被作为计算机信息计量单位,不论被存储数据的类型为何。
Bit:
位(英语:Bit),亦称二进制位,指二进制中的一位,是信息的最小单位。Bit是Binary digit(二进制数位)的缩写
1个字节(Byte)——8个位(bit)
1个字(Word)——16个位(bit)
================================
configure,make,make install
================================
这里也简单介绍一下在Linux/Unix下安装软件的源码三部曲,在后面我们会经常看到它们的身影。
./configure
make
make install
./configure是用来检查环境变量及配置编译选项的,
make是用来将源代码编译成二进制文件的,
make install则会将make编译出来的文件安装到指定位置(或默认位置)。
tail -f SystemOut.log 可以实时观测 最新产生的log,会不停的刷新屏幕。
tar -zvxf v4.tar 解压
ll 并不是linux下一个基本的命令,它实际上是ls -l的一个别名
ll -a 显示隐藏目录。
dmesg|less 查询linux内核启动时的信息
less /var/log/dmesg
在linux递归删除某个文件夹(svn)的命令:
find . -name ".svn" -type d | xargs rm -rf 或者
find . -name ".svn" -type d -print -exec rm -rf {} ;
(1) "."表示从当前目录开始递归查找。
(2) “ -name "svn" "根据名称来查找。
(3) " -type d "查找的类型为目录
(4) "-print" 输出查找的文件目录名
(5) 最主要的是是-exec了,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令。
exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个/,最后是一个分号。
find . -name "*.o" | xargs rm -f
可以通过管道命令来操作,先find出主目录下想删除的文件,然后通过“xargs”这个构造参数列表并运行命令。
find named/ -name *.bak | xargs rm -f
find . -name ".svn" -type d | xargs rm -rf
==============================================
管道和命令替换的区别是:
==============================================
管道: 管道符号"|"左边命令的输出作为右边命令的输入
命令替换: 将命令替换符"``"中命令的输出作为其他命令相应位置的参数
# pstree -p `ps -e | grep server | awk '{print $1}'` | wc -l
这里利用了管道和命令替换,
就是说用``括起来的命令会优先执行,然后以其输出作为其他命令的参数,
上述就是用 ps -e | grep server | awk '{print $1}' 的输出(进程号),作为 pstree -p 的参数
--------------------
nohup 命令
--------------------
如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。
nohup就是不挂断的意思( no hang up)。
用途 LINUX命令用法,不挂断地运行命令。
nohup Command [ Arg ... ] [ & ]
nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。
要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,
那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。
如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:
nohup command > myout.file 2>&1 &
在上面的例子中,0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error) ;
2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到myout.file文件中。
使用 jobs 查看任务。
使用 fg %n 关闭。