我是靠谱客的博主 成就美女,最近开发中收集的这篇文章主要介绍Linux基础命令-02,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部