linux系统管理命令-编程开发

编程开发

19.01 test命令
是shell环境中测试表达式的命令,可以进行文件测试,字符串测试,整数测试和布尔运算,如果测试值返回结果为0表示为真,否则为假;
 # test -r /etc/passwd
 # echo $?
0
 # test -x /etc/passwd
 # echo $?
1
 #
 # var1=123
 # var2=456
 # test $var1 -eq $var2  不能用=号,=用于字符串的比较
 # echo $?
1
 # str1="abc"
 # str2="abc"
 # test $str1 = $str2
 # echo $?
0
 # [ $str1 = $str2 ]  用[]可以代替test指令,但[]两边都有空格
 # echo $?
0


19.02 expr命令
是Linux中的表达式计算工具,可以完成求值操作
 # expr 5 + 5 注意+前后必须有空格
10
计算 ( 2 + 5 ) * ( 4 + 3 ) 每一个符号前后先加空格,然后把特殊的符号转义
 # expr \( 2 + 5 \) \* \( 4 + 3 \)
49


19.03 gcc命令
GNU的c语言编译器
 # gcc hello.c
 # gcc hello.c -o hello

19.04 gdb命令
GNU的调试器
 # gcc -g hello.c -o hello 首先需要在编译的时候加-g选项
 # gdb
(gdb)file hello
(gdb)start
(gdb)next
(gdb)next ...
(gdb)

19.05 ld命令
是GNU的连接器程序,将gcc生成的目标文件连接成可执行程序
 # gcc -c hello.c
 # ls hello.o
 # ld -o hello hello.o -lc -e main
 # file hello

19.06 ldd命令
用于打印程序所依赖的共享库
 # ldd /bin/ls
    linux-gate.so.1 =>  (0x0065b000)
    libselinux.so.1 => /lib/libselinux.so.1 (0x0087b000)
    librt.so.1 => /lib/librt.so.1 (0x00582000)
    libcap.so.2 => /lib/libcap.so.2 (0x002ac000)
    libacl.so.1 => /lib/libacl.so.1 (0x00cbe000)
    libc.so.6 => /lib/libc.so.6 (0x0039a000)
    libdl.so.2 => /lib/libdl.so.2 (0x0057b000)
    /lib/ld-linux.so.2 (0x00378000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x0055e000)
    libattr.so.1 => /lib/libattr.so.1 (0x0035d000)

19.07 make命令
是GNU的工程化编译工具,需要配置,编译,安装
 # tar -zxvf proftpd-1.3.3b.tar.gz -C proftpd
 # cd proftpd
 # 先阅读相关的readme,install等帮助信息
 # ./configure --prefix=/usr/local/proftpd-1.3.3b 配置的过程就是检查当前系统环境是否满足编译条件并进行一些基本配置
 # make  根据配置调用对应的编译器完成源代码的编译
 # make install 将编译完成的二进制程序帮助文档等安装到指定的安装目录下


19.08 as命令
是GNU的汇编器,可以将汇编程序编译成可执行程序
 # gcc -S hello.c
 # ls hello.s
 # as -o hello.o hello.s
 # ls hello.o

19.09 gcov命令
用于测试代码的覆盖率
 # gcc -fprofile-arcs -ftest-coverage -g -o test test.c
 # ls test test.gcno
 # ./test
 # gcov test.c
 # cat test.c.gcov 以 #开头的行是没有被覆盖的行

19.10 nm命令
用于显示指定的目标文件的符号表
 # gcc -c hello.c 只生成目标文件不连接
 # nm hello.o

19.11 perl命令
是perl语言的解释器
 # cat test.pl
$count = 1;
@array = (1, 2, 3);
while ($count <= @array) {
    print ("element $count: $array[$count-1]\n");
    $count++;
}
 # perl test.pl


19.12 php命令
是php语言的命令行接口,可以作为Linux系统的维护脚本
 # cat test.php
<?php
for($i=1;$i<10;$i++){
    echo "This is a PHP script. Line Number: $i\n";
}
?>
 # php test.php

19.13 protoize命令
是gcc套件中的指令,将GNUc转换为ANSIc的标准
 # protoize hello.c
函数的格式会发生稍微的改变

19.14 unprotoize命令
用于c语言源程序格式的转换
 # unprotoize hello.c

19.15 mktemp命令
被用来创建临时文件以供shell脚本使用,文件名是随机生成的,防止黑客攻击
 # cat test.sh
 #! /bin/bash
TPMFILE=`mktemp /tmp/example.XXXXXXXXXX` || exit 1
echo "program output" >> $TMPFILE
 # /bin/bash test.sh
 # bash test.sh
 # cat /tmp/example.atNJA138138

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值