![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习文档
luckkkkkky
这个作者很懒,什么都没留下…
展开
-
/dev/console,/dev/tty 和 /dev/null
UNIX和Linux中比较重要的三个设备文件是:/dev/console,/dev/tty和/dev/null。0/dev/console这个设备代表的是系统控制台,错误信息和诊断信息通常会被发送到这个设备。每个UNIX系统都会有一个指定的终端或显示屏用来接收控制台信息。1/dev/tty如果一个进程有控制终端的话,那么/dev/tty就是这个控制终端的别名。像cron这样的进程是没有控制终端的,因此它也就无法打开/dev/tty。tty这个词源于Teletypes,最早是源于电传打印机。转载 2021-08-30 19:23:35 · 604 阅读 · 0 评论 -
让后台Stopped的进程继续运行
Linux中可以通过&,让进程到后台运行。然后用jobs,fg,bg命令查看和切换任务队列。但是,当后台进程可以和用户进行交互时,放到后台是处于stopped的状态,比如top &top进程可以等待用户输入,进行排序等操作。使用jobs可以看到top进程在后台是stopped状态那么如何不需要交互时,但又可以让这些进程在后台进行呢。这里我使用的是输入重定向的方法,就是给top命令一个空的输入,并放到后台运行。top < /dev/null &此时使用jobs发转载 2021-08-30 16:58:16 · 909 阅读 · 0 评论 -
Shell中的${}、##和%%使用范例
这篇文章主要介绍了Shell中的${}、##和%%使用范例,本文给出了不同情况下得到的结果,需要的朋友可以参考下假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt${file##*/}:删掉最后一个 / 及其左边的字符串:my.file.txt${file#*.}:删掉第一个 . 及其左边的字符串:file.转载 2021-08-16 15:31:00 · 1166 阅读 · 0 评论 -
shell中嵌套执行expect命令实例
一直都想把expect的操作写到bash脚本里,这样就不用我再写两个脚本来执行了,搞了一下午终于有点小成就,给大家看看吧.系统:centos 5.x1.先安装expectyum -y install expect2.脚本内容:cat auto_svn.sh#!/bin/bashpasswd='123456'/usr/bin/expect <<-EOFset time 30spawn ssh -p18330 root@192.168.10.22expect {"*yes/转载 2021-08-16 09:25:32 · 420 阅读 · 0 评论 -
linux中bin与sbin目录
在linux系统中,有两个重要的目录:bin与sbin,分别包括/bin、/usr/bin/与/sbin、/usr/sbin/。bin:bin为binary的简写,主要放置系统的必备执行文件,例如:cat、cp、chmod df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。/usr/bin:主要放置应用程序工具的必备执行文件,例如:c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 gzip、转载 2021-08-09 14:29:16 · 1952 阅读 · 0 评论 -
windows搭建FTP服务器
在自己电脑本地搭建一个FTP用于测试第一步:配置IIS Web服务器1)控制面板中找到“程序”并打开–> 2) 程序界面找到“启用或关闭Windows功能”并打开或者两步也可以简化为一步:按【Win + R】快捷键打开运行对话框,输入“optionalfeatures”后,按回车键从“启用或关闭Windows功能”弹窗中找到Internet Information Services(或者中文版Internet信息服务)并打开1.5 配置IIS并点击确定后等待它完成第二步:配置II转载 2021-07-12 20:27:13 · 1936 阅读 · 0 评论 -
awk:打印某列以后的所有列
有一次,需要打印某列之后的所有列,在网上找了一下,发现了这个办法。感觉这个方法的逆向思维很好:需要某列以后的列,如果直接清除了某列之前的所有列,那么剩下的不久满足要求了吗?只显示第二列及以后所有列,操作命令如下:awk ‘{ $1=""; print $0 }’ file_name...转载 2021-06-30 16:24:36 · 1335 阅读 · 0 评论 -
字符拼的图
小火车 ╭ ╯╭ ╯╭ ╯ ╭╩═╮╔════╗╔════╗╔════╗╔════╗ ╭╯ ╠╣ ❏❏ ╠╣ ❏❏ ╠╣ ❏❏ ╠╣ ❏❏ ╟╰⊙═⊙╯╚⊙══⊙╝╚⊙══⊙╝╚⊙══⊙╝╚⊙══⊙╝ ╭╩══╮╔══════╗╔══════╗╔═══════╗ ╭╯ ╠╣ ╠╣ ╠╣ ╣╰⊙══⊙╯╚◎════◎╝╚◎════◎╝╚◎═════◎╝字符转换网址:http://patorjk.com/software/taag/#p=t原创 2021-06-08 15:05:23 · 609 阅读 · 0 评论 -
linux1号进程
1号进程,pid为1的进程,又称init进程。 linux系统启动后,第一个被创建的用户态进程就是init进程。它有两项使命: 1、执行系统初始化脚本,创建一系列的进程(它们都是init进程的子孙); 2、在一个死循环中等待其子进程的退出事件,并调用waitid系统调用来完成“收尸”工作; init进程不会被暂停、也不会被杀死(这是由内核来保证的)。它在等待子进程退出的过程中处于TASK_INTERRUPTIBLE状态, “收尸”过程中则处于TASK_RUNNING状态。pid为0、1的进转载 2021-05-27 14:04:23 · 1849 阅读 · 0 评论 -
char *p=“abc“和char p[]=“abc“不同
问题引入:在实习过程中发现了一个以前一直默认的错误,同样char *c = "abc"和char c[]=“abc”,前者改变其内容程序是会崩溃的,而后者完全正确。程序演示:测试环境Devc++代码#include <iostream>using namespace std;main(){ char *c1 = "abc"; char c2[] = "abc"; char *c3 = ( char* )malloc(3); c3 = "a转载 2021-05-26 15:11:32 · 314 阅读 · 0 评论 -
linux下将不同线程绑定到不同core和cpu上——pthread_setaffinity_np
linux下的单进程多线程的程序,要实现每个线程平均分配到多核cpu,主要有2个方法1:利用linux系统自己的线程切换机制,linux有一个服务叫做irqbalance,这个服务是linux系统自带的,默认会启动,这个服务的作用就是把多线程平均分配到CPU的每个核上面,只要这个服务不停止,多线程分配就可以自己实现。但是要注意,如果线程函数内部的有某个循环,且该循环内没有任何系统调用的话,可能会导致这个线程的CPU时间无法被切换出去。也就是占满CPU现象,此时加个系统调用,例如sleep,线程所占的CPU转载 2021-05-24 10:41:54 · 489 阅读 · 0 评论 -
linux下C语言多线程编程实例
用一个实例。来学习linux下C语言多线程编程实例。代码目的:通过创建两个线程来实现对一个数的递加。代码://包含的头文件#include <pthread.h>#include <stdio.h>#include <sys/time.h>#include <string.h>#define MAX 10pthread_t thread[2]; //两个线程pthread_mutex_t mut;int number=0;int转载 2021-05-24 10:27:03 · 287 阅读 · 0 评论 -
linux重定向总结:如何将shell命令的输出信息自动输出到文件中保存
linux重定向总结:如何将shell命令的输出信息自动输出到文件中保存在做批量实验室,例如跑批量MR的作业,我们会写好shell脚本,然后启动脚本,等所有作业执行完再去看结果,但是这些执行时的信息如何保存下来到文件中呢?下面这个命令可以完成这个任务。sh batchjob.sh 2>&1 | tee mylog.log 其中sh batchjob.sh:表示要执行的shell脚步;0,1,2:在linux分别表示标准输入、标准输出和标准错误信息输出。下面来总结下重定向问题。输入输转载 2021-04-16 10:14:10 · 1341 阅读 · 0 评论 -
Linux设置程序开机自启动
Linux设置程序开机自启动注意:作者测试时,Linux版本为RedHat6,同时应用在CentOS6应该也可以(作者未实测,但有同事在CentOS6上使用可行),系统版本的不同,可能造成操作上的差异(CentOS7就与CentOS6有较大的不同),但具体的思路可借鉴。以下操作均在root权限下Linux下配置某个服务的开机自启动,分为两种情况:一种是已经挂载的,另一种是未挂载的。已经挂载的程序可以使用 chkconfig命令查到运行等级,如httpd服务执行命令:#chkconfig --转载 2021-04-12 14:12:50 · 1198 阅读 · 0 评论 -
linux shell中if的各种判断
shell编程中使用到得if语句内判断参数-b当file存在并且是块文件时返回真 -c当file存在并且是字符文件时返回真 -d当pathname存在并且是一个目录时返回真 -e当pathname指定的文件或目录存在时返回真 -f当file存在并且是正规文件时返回真 -g当由pathname指定的文件或目录存在并且设置了SGID位时返回为真 -h当file存在并且是符号链...转载 2020-04-13 14:17:54 · 811 阅读 · 0 评论 -
DNS 标志位简要解析
根据规范,一个 DNS 包可以分为下面的几个部分。其中,身份 ID 占 16 个位,标志符占 16 个位,下面的分别是请求数、回答数、权威域名服务器数、其他记录数,再下面一点的就是回答的内容了(请求、回答、权威域名服务器、其他记录)可以对照下面这个 Wireshark 抓到的针对本站 imlonghao.com 的一次 DNS 请求进行理解本博文主要讲述的是 DNS 包中的几个标志位标...转载 2020-02-21 15:23:41 · 2462 阅读 · 0 评论 -
__builtin_expect 说明
这个指令是gcc引入的,作用是允许程序员将最有可能执行的分支告诉编译器。这个指令的写法为:__builtin_expect(EXP, N)。意思是:EXP==N的概率很大。一般的使用方法是将__builtin_expect指令封装为likely和unlikely宏。这两个宏的写法如下.#define likely(x) __builtin_expect(!!(x), 1) //x很可能为真...转载 2020-02-18 13:15:52 · 335 阅读 · 0 评论 -
LTE网络接口种类和主要协议
转载 2019-09-04 10:03:41 · 762 阅读 · 0 评论 -
yum安装命令的使用方法
转自:勿忘初心-Lislie杰原文链接:https://www.cnblogs.com/shizhijie/p/7997732.html1.什么是 yum? yum 是 yellowdog updater modified 的缩写。yellowdog 是个 Linux 的 distribution,RH 将这种升级技术利用到自己的 distribution 形成了现在的 yum,感觉上 y...转载 2019-08-27 09:56:39 · 546 阅读 · 0 评论 -
C语言结构体里的成员数组和指针
转自:AlanTu转载地址:https://www.cnblogs.com/alantu2018/p/8503411.htmlC语言结构体里的成员数组和指针单看这文章的标题,你可能会觉得好像没什么意思。你先别下这个结论,相信这篇文章会对你理解C语言有帮助。这篇文章产生的背景是在微博上,看到@Laruence同学出了一个关于C语言的题,微博链接。微博截图如下。我觉得好多人对这段代码的理解还不够...转载 2019-08-13 14:15:57 · 322 阅读 · 0 评论 -
.sh脚本中read命令的应用
转自:nkwy2012原文地址:https://www.cnblogs.com/nkwy2012/p/9171495.htmlread命令:read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量1)read后面的变量var可以只有一个,也可以有多个,这时如果输入多个数据,则第一个数据给第一个变量,第二个数据给第二个变量,如果输入数据个数过多,则最后所有的值都给...转载 2019-07-24 14:50:15 · 803 阅读 · 0 评论