linux整理

Linux内核4大主要功能:

内存管理

进程管理

设备管理

文件系统管理


Linux系统启动的进程和脚本管理

1./etc/inittab   管理系统开机时会自动启动的进程

2./etc/init.d     管理开机时启动或停止某个应用的脚本放在这个目录下,/etc/rcX.d目录在启动时,所有加载的脚本都是init.d下脚本的link


Linux 命令集合

1.ipcs -m  查看系统上的当前共享内存页面

2.cp -R dir1 dir2:  递归的复制dir1dir2

   cp -f test* dir2:将所有以test开头的文件复制到dir2-f参数用来强制覆盖dir2目录中已有的同名文件,而不会提示用户

   cp -a old/. new/:将old目录下的所有文件拷贝到new,包括隐藏文件

   cp -l test1 test4: 创建了test1的硬链接文件test4,实际上二者标示的是同一个文件,因二者的节点号是相同的

   cp -s test1 test5:创建了test1的软链接文件test5。链接文件只要存储源文件的信息,并不需要存储源文件中的数据


   ln -s test1 test5 软链接     ln -l test1 test4  可以达到和上述类似的效果


  1. rm -rf dir2:删除dir2目录及其子目录和文件  r递归  f不提示
  2. stat test1:查看文件统计信息
  3. file test1:查看文件类型,包括ASCII文本文件;Shell脚本文件;二进制可执行文件
  4. cat -n 1.txt  查看1.txt的内容,且给文本的每行加上行号 

       cat -b 1.txt  与上述指令的区别,只在文本非空白行加上行号

       cat -s 1.txt  压缩文本中连续的多个空白行为一个空白行

       more 1.tx  查看文本文件的内容,空格键可以翻页; 回车键可以显示下一行

  1. ps -aux:可以查看当前系统所有进程的详细信息

       ps l: 查看当前控制台下属于当前用户的进程信息

       可以在上述指令后增加参数 - -forest,可以看到进程之间的启动关系

       进程信息中STAT列含义如下:

       <:该进程运行在高优先级

       N:该进程运行在低优先级

       L:该进程有页面锁定在内存中

       s:该进程是个控制进程

       l:该进程是多线程的

       +:该进程运行在前端

  1. top指令设置刷新间隔为2: top -d 2 
  2. df -h: 显示某个设备上还有多少磁盘空间
  3. du -h: 显示某一个目录下各个子目录的空间
  4. printenv:打印当前shell所在的全局变量
  5. set:显示为某个特定进程设置的所有环境变量(包括全局变量)
  6. export 变量名:可以导出当前的局部变量成为全局变量  如:export test
  7. 变量定义注意事项:环境变量名称、等号和值之间没有空格;如果赋值一个含有空格的字符串,必须用单引号将字符串扩起来

 15. unset:删除环境变量,如:unset test. 注意:在shell子进程中unset的全局环境变量,在父进程中该环境变量依然有效。

  1. PATH:定义了命令行输入命令的搜索路径。
  2. /etc/profile 是每个shell启动时,默认的主启动文件
  3. 每个用户的shell启动脚本,有如下三者中的一种:$HOME/.bash_profile   $HOME/.bash_login   $HOME/.profile 这三个文件会加载$HOME目录下的.bashrc的启动脚本,.bashrc会加载/etc目录下的bashrc文件,同时$/HOME/.bashrc可以作为用户自定义脚本执行的地方。
  4. alias -p 可以查看已有的命令别名列表
  5. 查看Flash分区信息:cat /proc/mtd(显示分区名称、大小)    cat /proc/partition(显示block)
  6. shell中显示提示而不换行,如:echo -n “This is a test string: ”
  7. shell中显示$符号,需要按照转义处理。如:echo “test print \$15”
  8. shell中使用反引号,可以获取命令的输出结果,然后赋值给一个变量。如:test=`date`   test变量内容即为date的输出
  9. IFS:内部字段分隔符,该环境变量定义了bash shell用作字段分隔符的一系列字符。可以如下方式使用该变量:

IFS.OLD=$IFS

IFS=$’\n’

<……use the new IFS value in code>

IFS=$IFS.OLD

  1. $*变量:把所有参数当成一个参数,而不是多个参数;   $@变量:会单独处理每个参数,所有参数当做同一字符串中的多个独立的单词
  2. 最后一个参数的表现方式:

params=$#

echo the last parameter is $params

echo the last parameter is ${!#}

  1. 使用$和方括号将数学表达式圈起来:var1=$[1+(2*5)]
  2. bc:浮点计算器
  3. $?: 该变量用来保存上个执行命令的退出状态码,退出码0,表示命令成功结束;0,表示命令异常结束
  4. exit:该命令可以在shell结束时,指定一个退出状态码。该值取值范围0~255,如果指定返回大于255,会被系统自动取模后的结果,作为退出状态码
  5. if-then语句格式一:

if command

then

      commands

fi


  1. if-then语句格式二(command之后增加一个分号)

if command: then

      commands

fi


  1. if-then-else格式:

if command

then

    commands

else

    commands

fi


  1. 嵌套if( elif )

if command1

then

    commands

elif command2

then

    commands

fi


  1. test:上述if的条件判断都是根据命令的执行退出状态码来执行,如果想执行条件判断,需要使用test命令,或者使用[ ]
  2. if条件判断命令格式一:

if test condition

then

    commands

fi


  1. if条件判断命令格式二:

if [ condition ]

then

    commands

fi


  1. test命令可以判断3类条件:数值比较、字符串比较、文件比较
  2. 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


  1. test字符串比较功能:

str1 = str2                 检查str1是否与str2相同

str1 != str2                检查str1是否与str2不同

str1 < str2                 检查str1是否比str2小(在使用时,需要对于符号转义,如:if [ $val1 \< $val2 ]

str1 > str2                 检查str1是否比str2大(在使用时,需要对于符号转义,如:if [ $val1 \> $val2 ]

-n str1                       检查str1的长度是否大于0

-z str1                       检查str1的长度是否为0

注:在test命令中,大写字母会小于小写字母,这是因为test使用标准ASCII顺序,即小写字母的ASCII值会大于大写字母的ASCII

sort命令排序时,小写字母的会排在前面

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值