概述
1、版本宏函数
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
eg:printf("===%xn",KERNEL_VERSION(2,6,11));
2、demsg:检测和控制内核环缓冲;显示所有信息
1、dmesg:dmesg --help查看用法
2、用root权限执行 cat /proc/kmsg,查看内核的调试信息
kmsg里面就是显示内核消息的,程序中printk的输出都可以看到,
3、开机信息
开机信息亦保存在/var/log目录中;执行:cat /var/log查看
4、查看系统信息
[ubuntu:root]$ hostnamectl
Static hostname: ubuntu-virtual-machine
Icon name: computer-vm
Chassis: vm
Machine ID: a310e68e764ffe92628ad74
Boot ID: e03c392db5e22d892d148f0
Virtualization: vmware
Operating System: Ubuntu 16.04.4 LTS
Kernel: Linux 4.13.0-36-generic
Architecture: x86-64
5、查看是哪个发行版
[ubuntu:root]$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.4 LTS
Release: 16.04
Codename: xenial
6、查看内核版本和gcc信息
[ubuntu:root]$ cat /proc/version
Linux version 4.13.0-36-generic (buildd@lgw01-amd64-033) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)) #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018
7、查看内核版本
[ubuntu:root]$ uname -a
Linux ubuntu-virtual-machine 4.13.0-36-generic #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
8、如果是REDHAT的系统,还可以查看
[root@root]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
9、多层目录下的文件格式需要转换,dos2unix 没有-r之类的递归指令,所以需要与find还有管道结合。
find -type f | xargs dos2unix -o
10、列出物理CPU
及各自的逻辑核
数
cat /proc/cpuinfo | grep "physical id" | sort | uniq -c
假设输出如下,则表示有两个物理CPU,各自包含8个逻辑核
8 physical id : 0
8 physical id : 1
11、查看php相关信息
查看php的错误日志路径
echo '<?php phpinfo(); ?>' | php 2>&1 |grep -i error_log
判断PHP是否为线程安全版本
php -r "var_dump(ZEND_THREAD_SAFE);"
12、打印二进制
for (int i = 0; i < nread; ++i){
if (i % 4 == 0) printf("n");
printf("%02x ", buf[i]);
}
printf("n");
13、arm或单片机对齐字节
#pragma pack(push, 1)
12、字符串中的字母全转换成大/小写
注意: 传参方式
char *buf=(char *)malloc(64);
sprintf(buf,"%s","aaahh");
// 将字符串中的字母全转换成小写
char* g_strToLower( char *str )
{
char *cp = 0;
for (cp=str; *cp; ++cp)
{
if ('A' <= *cp && *cp <= 'Z')
*cp += 'a' - 'A';
}
return(str);
}
// 将字符串中的字母全转换成大写
char* g_strToUpper( char *str )
{
char *cp = 0;
for (cp = str; *cp; ++cp)
{
if ('a' <= *cp && *cp <= 'z')
*cp += 'A' - 'a';
}
return(str);
}
12、项目中常用的协同软件
12.1 JIRA
项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域
Jira的安装、使用与集成:Jira的安装、使用与集成_如梦幽香的博客-CSDN博客_jira安装
12.2 confluence
Confluence是一个企业级的Wiki软件,可用于在企业、部门、团队内部进行信息共享和协同编辑
Confluence使用教程:Confluence使用教程_罗_星星的博客-CSDN博客_confluence
12.3 supervisor
Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启
Supervisor使用详解:Supervisor使用详解 - 简书
12.4 fswatch
12.4.1 fswatch是一个跨平台的文件更改监视,获取通知警报在指定的文件或目录的内容被改变或修改。
简介:fswatch - 监视Linux中的文件和目录更改或修改
应用:PHP 版本 - OpenRASP 官方文档 - 开源自适应安全产品
12.4.1 inotify文件监控
Inotify API用于检测文件系统变化的机制。Inotify可用于检测单个文件,也可以检测整个目录。当检测的对象是一个目录的时候,目录本身和目录里的内容都会成为检测的对象
12.5 Visual Studio Code
Visual Studio Code 是一个运行于 OS X、Windows 和 Linux 之上的,针对于编写现代 Web 和云应用的跨平台编辑器。Visual Studio Code 为开发者们提供了对多种编程语言的内置支持,同时也会为这些语言提供丰富的代码补全和导航功能。JavaScript,TypeScript,Node.js 和 ASP.NET 5 开发者也将会获得额外的工具集
12.6 PhpStorm 2020.1 x64 : php开发的IDE
12.7 PyCharm Community Edition 2020.3.2 x64 : python开发的IDE
12.8 Navicat Premium 12
一套数据库开发工具,让你从单一应用程序中同时连接 MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 数据库
12.9 Robo 3T 1.1.1
一个MongoDB管理工具
12.10 向日葵:远程控制软件
12.11 Fiddler 4
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,使用Fiddler无论对开发还是测试来说,都有很大的帮助
12.12 Burp Suite
urp Suite是一款信息安全从业人员必备的集 成型的渗透测试工具,它采用自动测试和半自动测试的方式,包含了 Proxy,Spider,Scanner,Intruder,Repeater,Sequencer,Decoder,Comparer等工具模块。通 过拦截HTTP/HTTPS的web数据包,充当浏览器和相关应用程序的中间人,进行拦截、修改、重放数据包进行测试,是web安全人员的一把必备的瑞士军刀
12.12.1 omnipeek7.9.1
世界上功能最强大的网络协议分析器
12.13 软件架构建模软件
powerdesigner
rationalrose
diagrams.net:网络布局图比较详细
12.14 思维导图免费软件
- XMind (功能更强大)
- FreeMind
文档编辑软件
Typora|Typora中文|typora下载|typora 主题
12.15 JMeter工具
Apache JMeter是Apache组织开发的基于Java的压力测试工具
12.6 Apache Tika 内容分析工具包
Apache Tika™ 工具包从一千多种不同的文件类型(如 PPT、XLS 和 PDF)中检测和提取元数据和文本。所有这些文件类型都可以通过一个界面进行解析,使 Tika 可用于搜索引擎索引、内容分析、翻译等。
12.7 Win32DiskImager
Win32DiskImager是一款非常好用的U盘写入工具,主要功能是来写Ubuntuimg文件到SD和USB卡中。只要运行Win32DiskImager工具,填入自己的img,然后选择移动设备写入即可。Win32DiskImager可以使用户将光盘内容恢复到它原来的状态,能够让用户将各类移动磁盘如u盘内的数据进行成像效果,软件还能够创建可移动存储单元和U3设备的精确副本来作为备份。
示例:H3芯片ubuntu镜像系统Orangepione_2.0.8_ubuntu_focal_desktop_linux5.4.65
12.8 Jupyter Notebook
Jupyter Notebook是一个开源的Web应用程序,可以创建和共享包含实时代码,方程式,可视化和说明文本的文档。
Jupyter的官网:
Project Jupyter | Home
12.9 Mininet
Mininet是由一些虚拟的终端节点(end-hosts)、交换机、路由器连接而成的一个网络仿真器,它采用轻量级的虚拟化技术使得系统可以和真实网络相媲美。
Mininet可以很方便地创建一个支持SDN的网络:host就像真实的电脑一样工作,可以使用ssh登录,启动应用程序,程序可以向以太网端口发送数据包,数据包会被交换机、路由器接收并处理。有了这个网络,就可以灵活地为网络添加新的功能并进行相关测试,然后轻松部署到真实的硬件环境中。
ubuntu : sudo apt-get install mininet
12.10 网络学习工具
eNSP
eNSP(Enterprise Network Simulation Platform)是一款由华为提供的、可扩展的、图形化操作的网络仿真工具平台,主要对企业网络路由器、交换机进行软件仿真,完美呈现真实设备实景,支持大型网络模拟,让广大用户有机会在没有真实设备的情况下能够模拟演练,学习网络技术。
Packet Tracer
是由Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。
12.11 NSIS
NSIS(Nullsoft Scriptable Install System)是一个开源的 Windows 系统下安装程序制作程序。它提供了安装、卸载、系统设置、文件解压缩等功能。
HM NIS Edit :(nsis脚本编辑器)是一款功能强大的NSIS脚本编辑工具。NSIS脚本编辑的软件非常多,你在用哪款?想换吗?小编为你推荐HM NIS Edit中文版。这款软件绿色小巧,功能齐全,操作简单!
最后
以上就是成就美女为你收集整理的Linux基础命令-02的全部内容,希望文章能够帮你解决Linux基础命令-02所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复