
linux 学习笔记
文章平均质量分 83
丁老师的技术随笔
公众号:丁老师的技术随笔
展开
-
国内Linux 等软件镜像源修改
扫码关注公众号:丁老师的技术随笔 , 一起搞IT.刚开始学习Linux 的同学,大都很喜欢折腾Linux发行的各种发行版,Ubuntu,Centos,Fedora等,而且对新版本比较热衷,最新的Ubuntu18.04LTS,Centos7。但是使用这些新版本在更新或者安装软件时经常会出现安装缓慢,或者直接安装不上,这是因为官方的软件源或者软件仓库在国外,网速慢,这时候就需要我们用国内镜像源替换官方源,除此大家还经常要换Docker,maven,npm等镜像地址。 ...原创 2020-12-13 16:56:33 · 1080 阅读 · 0 评论 -
Linux命令trap - 在脚本中处理信号 例子
在Linux中,trap命令主要用于接收信号并采取行动,信号是异步发送到一个程序的事件,在默认情况下,可以终止一个程序,trap命令原型如下:trap command signalsignal是指接收到的信号,command是接收到该信号采取的行动。如下为两种简单的信号。信号说明INT(2)Ctrl + CQUIT(3)Ctrl + \trap命令常见的用途在于转载 2012-08-05 16:51:29 · 3102 阅读 · 0 评论 -
用shc加密shell脚本 - linux进阶屋 - 51CTO技术博客
Shc可以用来对shell脚本进行加密,可以将shell脚本转换为一个可执行的二进制文件。经过shc对shell脚本进行加密后,会同时生成两种个新的文件,一个是加密后的可执行的二进制文件(文件名以.x结束),另一个是C语言的原文件(文件名以.x.c结束)。 下面就说明一下shc的安装,参数,以及使用示例:下载安装:(官网下载地址: http://www.datsi.fi.upm.e转载 2012-08-05 17:36:51 · 1895 阅读 · 0 评论 -
linux 下有用的命令
1.查看cpu信息:cat /proc/cpuinfo2.查看系统分区fdisk -l3.u盘等挂载:mount -t vfat -o codepage=936,iocharset=cp936 /dev/hda5 /mnt/dmount -o codepage=936,iocharset=cp936 /dev/sda1 /mnt/原创 2012-08-05 15:52:11 · 688 阅读 · 0 评论 -
shell 编程要点
两个有用的命令read -p "Please input a choice:" choicekillall -9 myfiles1.长命令 使用反斜线字符(\)在命令行上扩充qustdjx@qustdjx-K42JZ:~/test$ echo "this is \> long command"this is long command转载 2012-08-02 19:12:29 · 863 阅读 · 0 评论 -
linux之dd命令
dd 是 Linux/UNIX下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。1. 命令简介dd 的主要选项:指定数字的地方若以下列字符结尾乘以相应的数字:b=512, c=1, k=1024, w=2, xm=number mif=file输入文件名,缺省为标准输入。o转载 2012-08-07 20:14:59 · 843 阅读 · 0 评论 -
linux下库文件的类型
库文件一般分为静态库和动态库两种。静态库是指编译连接时,把库文件的代码全部加入到可执行文件当中,因此生成的文件比较大,但在运行时也就不需要库文件了。其后缀名一般为“.a”。动态库与之相反,在编译连接时并没有把库文件的代码加入到可执行文件中,而在程序执行时链接文件加载库,这样可以节省系统的开销。其后缀名一般为“.so”。转自http://hi.baidu.com/angle3839/bl转载 2012-07-26 16:15:16 · 1008 阅读 · 0 评论 -
查看ubuntu内核版本号
查看内核版本 :uname -a查看Ubuntu版本: cat /etc/issue转载 2012-07-26 16:18:23 · 822 阅读 · 0 评论 -
autotools的使用
首先检查系统有没有装有autotools如果没有的话,直接apt-get install autoconf下面的文章转自http://blog.sina.com.cn/s/blog_4b5210840100c0ta.htmlautotools主要就是利用各个工具的脚本文件以生成最后的Makefile。流程主要如下:1,使用autoscan,它会在给定目录及其子目录树中检查源文件转载 2012-07-26 16:23:08 · 841 阅读 · 0 评论 -
linux grep find 命令
grep正则表达式元字符集(基本集)^ 锚定行的开始 如:'^grep'匹配所有以grep开头的行。$ 锚定行的结束 如:'grep$'匹配所有以grep结尾的行。. 匹配一个非换行符的字符如:'gr.p'匹配gr后接一个任意字符,然后是p。* 匹配零个或多个先前字符如:'*grep'匹配所有一个或多个空格后紧跟grep的行。 .*一起用代表任意字符。转载 2012-08-05 16:14:57 · 983 阅读 · 0 评论 -
有用的命令
cat /proc/cpuinfo 查看cpu信息fdisk -l 查看分区情况挂载fat32分区 mount -t vfat -o codepage=936,iocharset=cp936 /dev/hda5 /mnt/d挂载usb设备: 如果不自动挂载加载模块 modprobe usb-storage modpr原创 2012-08-05 10:21:58 · 732 阅读 · 0 评论 -
请用Shell编程来实现:当输入不同的选择时,执行不同的操作,如:输入start 开始启动应用程序myfiles,输入stop时,关闭myfiles,输入status时,查看myfiles进程,否则执
请用Shell编程来实现:当输入不同的选择时,执行不同的操作,如:输入start 开始启动应用程序myfiles,输入stop时,关闭myfiles,输入status时,查看myfiles进程,否则执行exit显示“EXIT!”并退出程序。#!/bin/shwhile [ $ifexit != 1 ]doread -p "Please input a choice:" choice转载 2012-08-04 18:58:16 · 2275 阅读 · 0 评论 -
判断一文件是不是字符设备文件
顺便补习一下字符串的截取:${varible:n1:n2}:截取变量varible从n1到n2之间的字符串。可以根据特定字符偏移和长度,使用另一种形式的变量扩展,来选择特定子字符串。试着在 bash 中输入以下行:$ EXCLAIM=cowabunga$ echo ${EXCLAIM:0:3}cow$ echo ${EXCLAIM:3:7}abunga这种形式的字符转载 2012-08-04 11:32:23 · 5104 阅读 · 0 评论 -
在目录下有四个文件m1.txt,m2.txt,m3.txt,m4.txt,用Shell编程,实现自动创建m1,m2,m3,m4四个目录,并将m1.txt,m2.txt,m3.txt,m4.txt四个
在根目录下有四个文件m1.txt,m2.txt,m3.txt,m4.txt,用Shell编程,实现自动创建m1,m2,m3,m4四个目录,并将m1.txt,m2.txt,m3.txt,m4.txt四个文件分别拷贝到各自相应的目录下。如果有很多m1 ...m100 该怎么办,于是我写了:#实现自动创建m1,m2,m3,m4...m100四个目录,并将m1.txt,m2.txt原创 2012-08-04 13:12:10 · 7204 阅读 · 0 评论 -
编写三个Shell程序,分别用for、while、与until求从2+4+…+100的和。
for:#编写三个Shell程序,分别用for、while、与until求从2+4+…+100的和。#!/bin/shi=2sum=0for i in `seq 2 2 100`do((sum=sum+$i))doneecho "2+4+...+100=$sum"while:#!/bin/shi=2sum=0while((i<=100))do ((su原创 2012-08-04 20:16:38 · 5369 阅读 · 0 评论 -
编写两个Shell程序kk及aa,在kk中输入两个数,调用aa计算计算这两个数之间奇数的和。
kk:#!/bin/shread -p "please input 2 integer:" a becho "a=$a,b=$b"./test9.sh $a $baa:#!/bin/sha=$1b=$2sum=0temp=`expr $a % 2`if [ "$temp" -eq 1 ]then i=$awhile((i<=$b))do((su原创 2012-08-05 10:35:23 · 1949 阅读 · 0 评论 -
echo 特别的参数
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出: \a 发出警告声; \b 删除前一个字符; \c 最后不加上换行符号; \f 换行但光标仍旧停留在原来的位置; \n 换行且光标移至行首; \r 光标移至行首,但不换行; \t 插入tab; \v 与\f相同; \\ 插入\字符; \nnn转载 2012-08-05 11:06:47 · 782 阅读 · 0 评论 -
(())、let、expr、bc等计算命令的使用语法和应用技巧
转自:原文地址:http://oldboy.blog.51cto.com/2561410/767862思路集锦:①.C语言型for循环结构及(())计算式shell脚本[oldboy@student ~]$ cat for1.sh #!/bin/shj=0for((i=0; ido ((j=j+i))doneecho $j写成一行的命令行转载 2012-08-04 10:26:11 · 6824 阅读 · 0 评论 -
/dev/null 2>&1 详解
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://viplin.blog.51cto.com/241472/99568 今天一个朋友突然在自己的维护的Linux中, /var/spool/cron/root 中看到了以下的内容:30 19 * * * /usr/bin/**dcon.sh > /dev转载 2012-08-04 13:52:52 · 876 阅读 · 0 评论 -
shell 编程要点(二)
9.case 语句语法:case表达式 in值1|值2)操作;;值3|值4)操作;;值5|值6)操作;;*)操作;;esac<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->case的作用就是当字符串与某个值相同是就执行那个值后面的操作。如果同一个操作对于多个转载 2012-08-02 20:09:30 · 2440 阅读 · 0 评论 -
C语言嵌入式系统编程修炼之屏幕操作
C语言嵌入式系统编程修炼之屏幕操作作者:宋宝华出处:天极网责任编辑: 方舟[ 2005-06-20 15:54 ]现在要解决的问题是,嵌入式系统中经常要使用的并非是完整的汉字库,往往只是需要提供数量有限的汉字供必要的显示功能汉字处理现在要解决的问题是,嵌入式系统中经常要使用的并非是完整的汉字库,往往只是需要提供数量有限的汉字供必要的显示功能。例如,一个微波炉转载 2012-07-26 16:34:36 · 1048 阅读 · 0 评论 -
系统引导过程
系统引导过程主要由以下几个步骤组成(以硬盘启动为例)1、 开机;2、 BIOS加电自检(POST---Power On Self Test),内存地址为0fff:0000;3、 将硬盘第一个扇区(0头0道1扇区,也就是Boot Sector)读入内存地址0000:7c00处;4、 检查(WORD)0000:7dfe是否等于0xaa55.若不等于则转去尝试其他介质;如果没有其他启动介转载 2012-07-31 15:50:27 · 1687 阅读 · 0 评论 -
makefile自动化变量及其说明
模式规则模式规则类似于普通规则。只是在模式规则中,目标名中需要包含有模式字符“%”(一个),包含有模式字符“%”的目标被用来匹配一个文件名,“%”可以匹配任何非空字符串。规则的依赖文件中同样可以使用“%”,依赖文件中模式字符“%”的取值情况由目标中的“%”来决定。例如:对于模式规则“%.o : %.c”,它表示的含义是:所有的.o文件依赖于对应的.c文件。有一点需要注意的是,"%"的展转载 2012-08-01 18:30:59 · 11340 阅读 · 1 评论 -
linux date命令的输出格式
DATE(1) User Commands DATE(1)NAME date - print or set the system date and timeSYNOPSIS date [OPTION]... [+FORMAT] date翻译 2012-08-01 20:41:58 · 2712 阅读 · 0 评论 -
GCC编译选项
gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] 3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] 4.连接目标代码,生成可执行程序[链接器ld] 参数详解 -c 只激活预处理,编译,和汇编,也就是他只把程序做成obj文件 eg: gc转载 2012-08-01 15:23:54 · 1324 阅读 · 0 评论 -
modprobe与insmod的使用
insmod 与 modprobe 都是载入 kernel module,不过一般差别于 modprobe 能够处理 module 载入的相依问题。 比方你要载入 a module,但是 a module 要求系统先载入 b module 时,直接用 insmod 挂入通常都会出现错误讯息,不过 modprobe 倒是能够知道先载入 b module 后才载入 a module,如此相依性就会转载 2012-08-17 10:19:45 · 1985 阅读 · 0 评论 -
不同操作系统对文本文件“行结束符”的不同定义
不同操作系统对文本文件“行结束符”的不同定义\n是换行,英文是LineFeed,ASCII码是0xA。\r是回车,英文是Carriage Return ,ASCII码是0xD。如果用过机械打字机,就知道回车和换行的区别了。。。 换行就是把滚筒卷一格,不改变水平位置。 回车就是把水平位置复位,不卷动滚筒。但是我们平时按得Enter到底是回车还是换行,不转载 2012-09-01 19:02:44 · 5913 阅读 · 0 评论 -
修改目录下所有文件的权限
[root@localhost ~]# chmod -R 777 /home/user 注:表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx原创 2012-09-06 15:27:57 · 1093 阅读 · 0 评论 -
expect的基本用法
一、概述我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能。而Expect就使用来实现这种功能的工具。Expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预。Expect的作者Don Libes在1990年开始编写Expect转载 2013-05-14 21:16:47 · 1451 阅读 · 0 评论 -
关于装系统那些事
1.首先是windows 下的两种文件系统,NTFS和FAT32 ,而linux下的是ext4 支持日志事务的系统,NTFS:一种能够提供各种FAT版本所不具备的性能、安全性、可靠性与先进特性的高级文件系统。举例来说,NTFS通过标准事务日志功能与恢复技术确保卷的一致性。如果系统出现故障,NTFS能够使用日志文件与检查点信息来恢复文件系统的一致性。在Windows 2000和Windows原创 2012-07-31 15:48:48 · 1401 阅读 · 0 评论 -
关于Linux操作系统makefile实例详细解析
例一:TARGET=helloworldCC=gccCFLAGS=-Wall -O -gSRC=$(wildcard *.c) #所有的.c文件OBJS=$(patsubst %.c,%.o,$(wildcard *.c))$(TARGET):$(OBJS)$(CC) $(CFLAGS) $(OBJS) -o $@# $(RM) *.o%.o:转载 2012-08-01 16:28:28 · 1219 阅读 · 0 评论 -
Makefile 的使用函数
在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。一、函数的调用语法函数调用,很像变量的使用,也是以“$”来标识的,其语法如下:$( )或是${ }这里,就是函数名,make支持的函数不多。是函数转载 2012-08-01 16:00:34 · 1119 阅读 · 0 评论 -
Linux守护进程
守护进程,就是通常所说的Daemon进程,是Linux中的后台服务进程。它是一个生存起较长的进程,通常独立于控制终端,并且周期性的执行某种任务或等待处理某些发生的事件。守护进程常常在系统引导时候启动,在系统关闭时终止。Linux系统有很多守护进程,大多数服务都是通过守护进程来实现的,例如系统服务都是守护进程。同时,守护进程还能完成许多系统任务,例如,作业规划进程crond、打印进程lqd等(这转载 2012-07-26 15:55:26 · 1072 阅读 · 0 评论 -
几种开源TCP/IP协议栈概述
1、BSD TCP/IP协议栈 BSD栈历史上是其他商业栈的起点,大多数专业TCP/IP栈(VxWorks内嵌的TCP/IP栈)是BSD栈派生的。这是因为BSD栈在BSD许可协议下提供了这些专业栈的雏形,BSD许用证允许BSD栈以修改或未修改的形式结合这些专业栈的代码而无须向创建者付版税。同时,BSD也是许多TCP/IP协议中的创新(如广域网中饿拥塞控制和避免)的开始点。2、uC转载 2012-07-26 20:06:09 · 5832 阅读 · 2 评论 -
嵌入式操作系统中unicode编码和GBK编码的转换
前几天在用2440读取U盘数据的时候,遇到长文件名的读取,长文件名在FAT格式的文件系统中是以Unicode格式存放的,而一般的显示设备只支持GBK编码格式。因此,要想让读出来的汉字数据在显示屏等设备上正确显示出来就需要将Unicode编码的数据转换成对应的GBK码。//GBK即汉字内码扩展规范,K为扩展的汉语拼音中“扩”字的声母。英文全称Chinese Internal Code Speci转载 2012-07-26 20:31:55 · 4262 阅读 · 2 评论 -
USB设备描述符
一个USB设备有一个设备描述符,设备描述符里面决定了该设备有多少种配置,每种配置描述符对应着配置描述符;而在配置描述符中又定义了该配置里面有多少个接口,每个接口有对应的接口描述符;在接口描述符里面又定义了该接口有多少个端点,每个端点对应一个端点描述符;端点描述符定义了端点的大小,类型等等。由此我们可以看出,USB的描述符之间的关系是一层一层的,最上一层是设备描述符,下面是配置描述符,再下面是接口描转载 2012-07-26 20:46:31 · 1437 阅读 · 0 评论 -
跟我一起写 Makefile(二)
三、命令出错 每当命令运行完后,make会检测每个命令的返回码,如果命令返回成功,那么make会执行下一条命令,当规则中所有的命令成功返回后,这个规则就算是成功完成了。如果一个规则中的某个命令出错了(命令退出码非零),那么make就会终止执行当前规则,这将有可能终止所有规则的执行。 有些时候,命令的出错并不表示就是错误的。例如mkdir命令,我们一定需要建立一个目录,如果目录不存在,那转载 2012-08-01 10:00:22 · 745 阅读 · 0 评论 -
ubuntu下软件中心安装软件会提示:下载软件包文件失败
这主要是软件源的问题解决方案:系统->系统管理->软件源->ubuntu软件->下载自->其他站点在"中国"里选择一个cn99、srt.cn、163,教育网用bjtu.edu.cn的(北京交通大学),我选的是。或者按"选择最佳服务器"(因为要测试速度,可能要花费些时间)原创 2012-07-31 17:36:06 · 15709 阅读 · 5 评论 -
makefile 学习
在大多数时候,由于源文件太多,编译生成的中间目标文件太多,而在链接时需要明显地指出中间目标文件名,这对于编译很不方便,所以,我们要给中间目标文件打个包,在Windows下这种包叫“库文件”(LibraryFile),也就是 .lib 文件,在UNIX下,是Archive File,也就是 .a 文件。1.Makefile的规则:target ... : prerequisites转载 2012-07-31 19:34:46 · 937 阅读 · 0 评论 -
跟我一起写 Makefile(一)
一、Makefile里有什么? Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。 1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。 2、隐晦规则。由于我们的make有自动推导的功能,所以隐晦的规则可以让我们比较粗糙地简略地书写Makefile,这是由m转载 2012-07-31 21:12:06 · 933 阅读 · 0 评论