Linux学习之Linux常用命令14_Linux命令大全_Linux文件管理10_gcc_mysqladmin命令
风哥针对大家学习Linux常用命令时,涉及到很多的Linux文件管理类命令大全,接下来风哥就重点为大家介绍这些Linux命令的作用及这些Linux命令的使用案例教程(Linux文件管理71-80):
1.Linux命令-Linux文件管理命令71:gdb命令
gdb命令包含在GNU的gcc开发套件中,是功能强大的程序调试器。
gdb中的命令很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调试工作。
语法格式:gdb [参数] [文件]
常用参数:
-cd 设置工作目录
-q 安静模式,不打印介绍信息和版本信息
-d 添加文件查找路径
-x 从指定文件中执行GDB指令
-s 设置读取的符号表文件
常用命令:
file <文件名> 加载被调试的可执行程序文件
run 重新开始运行文件
start 单步执行,运行程序,停在第一执行语句
list 查看原代码,简写l
set 设置变量的值
next 单步调试(逐过程,函数直接执行),简写n
step 单步调试(逐语句:跳入自定义函数内部执行),简写s
backtrace 查看函数的调用的栈帧和层级关系,简写bt
frame 切换函数的栈帧,简写f
info 查看函数内部局部变量的数值,简写i
finish 结束当前函数,返回到函数调用点
continue 继续运行,简写c
print 打印值及地址,简写p
quit 退出gdb,简写q
gdb命令拥有较多内部命令。在gdb命令提示符“(gdb)”下输入“help”可以查看所有内部命令及使用说明。要使用gdb调试程序,在使用gcc编译源代码时必须加上“-g”参数。
Linux命令教程案例:
启动gdb调试器:
[root@fgedu.net ~]# gdb
(gdb)
加载二进制可执行程序:
(gdb)file itpux.out
运行并跟踪程序:
(gdb)start
2.Linux命令-Linux文件管理命令72:gcc命令
gcc命令使用GNU推出的基于C/C++的编译器,是开放源代码领域应用最广泛的编译器,具有功能强大,编译代码支持性能优化等特点。
现在很多程序员都应用gcc,目前gcc可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。
语法格式:gcc [参数] [源文件]
常用参数:
-o 指定生成的输出文件
-E 仅执行编译预处理
-S 将C代码转换为汇编代码
-wall 显示警告信息
-c 仅执行编译操作,不进行连接操作
Linux命令教程案例:
无选项编译文件:
[root@fgedu.net ~]# gcc itpux.c
将itpux.c预处理、汇编、编译并链接形成可执行文件itpux:
[root@fgedu.net ~]# gcc itpux.c -o itpux
将itpux.c预处理输出itpux.i文件:
[root@fgedu.net ~]# gcc -E itpux.c -o itpux.i
将itpux.c和itpux_1.c分别编译后链接成itpux_2可执行文件:
[root@fgedu.net ~]# gcc itpux.c itpux_1.c -o itpux_2
将itpux.c预处理输出itpux.i文件:
[root@fgedu.net ~]# gcc -E itpux.c -o itpux.i
3.Linux命令-Linux文件管理命令73:mysqladmin命令
mysqladmin命令是MySQL服务器管理任务的客户端工具,它可以检查MySQL服务器的配置和当前工作状态,创建和删除数据库,创建用户和修改用户密码等操作。
语法格式 : mysqladmin [参数] [管理命令]
常用参数:
-h MySQL服务器主机名或ip地址
-u 连接MySQL服务器的用户名
-p 连接MySQL服务器的密码
-- -help 显示帮助信息
mysqladmin命令支持的MySQL服务器管理命令非常丰富,可以通过“- -help”显示可用的管理命令。
Linux命令教程案例:
查看服务器当前状态:
[root@fgedu.net ~]# mysqladmin -u root -p status
Enter password:
Uptime: 26 Threads: 1 Questions: 2 Slow queries: 0 Opens: 67 Flush tables: 1 Open tables: 60 Queries per second avg: 0.076
修改root密码:
[root@fgedu.net ~]# mysqladmin -u root -poldpassword password 'itpux'
检查mysqlserver是否可用:
[root@fgedu.net ~]# mysqladmin -u root -p ping
mysqld is alive
创建新数据库:
[root@fgedu.net ~]# mysqladmin -u root -p create mysql_itpux
4.Linux命令-Linux文件管理命令74:rpmverify命令
rpmverify命令用来验证已安装的rpm软件包的正确性。
语法格式: rpmverify [参数]
常用参数:
-Va 验证所有软件包
-Vf 验证指定软件包
--nomd5 不验证软件包的md5摘要
Linux命令教程案例:
验证所有软件包:
[root@fgedu.net ~]# rpmverify -Va
改变软件包权限:
[root@fgedu.net ~]# rpmverify -Vf /bin/touch
[root@fgedu.net ~]# rpm -qf /bin/touch
coreutils-8.4-43.el6.x86_64
[root@fgedu.net ~]# vim /bin/touch
[root@fgedu.net ~]# ll -h /bin/touch
-rwxr-xr-x. 1 root root 47K May 11 2015 /bin/touch
[root@fgedu.net ~]# chmod 777 /bin/touch
[root@fgedu.net ~]# ll -h /bin/touch
-rwxrwxrwx. 1 root root 47K May 11 2015 /bin/touch
[root@fgedu.net ~]# rpmverify -Vf /bin/touch
.M....... /bin/touch
如果恢复权限后:
[root@fgedu.net ~]# chmod 755 /bin/touch
[root@fgedu.net ~]# ll -h /bin/touch
-rwxr-xr-x. 1 root root 47K May 11 2015 /bin/touch
[root@fgedu.net ~]# rpmverify -Vf /bin/touch
如果编辑一个文件,并增加内容,如果修改过来,修改时间就会变化:
[root@fgedu.net ~]# rpmverify -Vf /etc/ssh/sshd_config #增加内容
S.5....T. c /etc/ssh/sshd_config
[root@fgedu.net ~]# vim /etc/ssh/sshd_config #去掉增加内容
[root@fgedu.net ~]# rpmverify -Vf /etc/ssh/sshd_config
.......T. c /etc/ssh/sshd_config
不验证软件包的md5摘要:
[root@fgedu.net ~]# rpmverify --nomd5 -Vf /bin/touch
5.Linux命令-Linux文件管理命令75:get_module命令
get_module命令用于获取Linux内核模块的详细信息。
使用get_module命令获取模块详细信息时,必须确定该模块已经加载到内核,否则会提示“模块找不到”的错误。
语法格式: get_module [模块名]
Linux命令教程案例:
获取指定模块信息:
[root@fgedu.net ~]# get_module ipv6
6.Linux命令-Linux文件管理命令76:readlink命令
readlink是Linux系统中一个常用工具,主要用来找出符号链接所指向的位置。
语法格式:readlink [参数] [文件]
常用参数:
-f 递归跟随给出文件名的所有符号链接以标准化,除最后一个外所有组件必须存在
-e 递归跟随给出文件名的所有符号链接以标准化,所有组件都必须存在
-n 不输出尾随的新行
-s 缩减大多数的错误消息
-v 报告所有错误消息
Linux命令教程案例:
查看软链文件真实文件:
[root@fgedu.net ~]# ll /etc/system-release
lrwxrwxrwx. 1 root root 14 3月 21 07:52 /etc/system-release -> centos-release
[root@fgedu.net ~]# readlink -f /etc/system-release
/etc/centos-release
7.Linux命令-Linux文件管理命令77:nologin命令
使用nologin命令可以限制某些用户通过Shell登录系统。如果/etc/nologin.txt存在,显示其内容给用户,而不是默认消息。
语法格式:nologin
Linux命令教程案例:
限制用户登录:
[root@fgedu.net ~]# nologin
8.Linux命令-Linux文件管理命令78:sulogin命令
使用sulogin命令可以进行单用户登录,在启动时Shell将不会读取/etc/profile或$HOME/.profile文件。
语法格式:sulogin [参数]
常用参数:
-p 单用户Shell调用一个破折号作为参数中的第一个字符
-t 程序只会等待用户输入指定秒数
Linux命令教程案例:
进行单用户的登录:
[root@fgedu.net ~]# sulogin
9.Linux命令-Linux文件管理命令79:telinit命令
使用telinit命令可以更改Linux系统的运行级别。运行级别可以是0~6之间的一个数字,其中0是关闭系统,1是进入单用户模式,2~5是多用户运行级别,6是重新启动系统。s或S表示单用户模式。
语法格式:telinit [参数] [运行级别]
常用参数:
-q 减少输出,只有错误信息
-v 增加输出,包括信息性消息
Linux命令教程案例:
更改Linux系统的运行级别为3:
[root@fgedu.net ~]# telinit 3
10.Linux命令-Linux文件管理命令80:xzcat命令
xzcat命令可以查看xz压缩文件的内容。
语法格式:xzcat [参数] [文件]
常用参数:
-z 强制压缩
-d 强制解压缩
-t 测试压缩文件的完整性
-l 使用列表格式显示
-k 保留输入文件,不要删除
-f 强制操作
Linux命令教程案例:
查看压缩文件/root/itpux.xz内容:
[root@fgedu.net ~]# xzcat /root/itpux.xz