linux系统

Linux文本处理工具简单使用

蓝咒 提交于 2020-03-15 01:50:47
1 统计出/etc/passwd文件中其默认shell为非/sbin/nologin的用户个数,并将用户都显示出来 grep是一个文本工具,是通过一行一行来匹配文本进行处理的; 通过grep命令,借助-v参数显示不匹配的行; getent passwd | grep -Ev /sbin/nologin$ 2 查出用户UID最大值的用户名、UID及shell类型 Sort用于排序,添加特定的参数可以根据不同需求排序; head 用户取前几行的; cut 是用于取特定列的; sort -k3 -t“:” -rn 以冒号为分隔符,以第三列进行数字逆序排序; cut -d “:” -f1,3,7 以冒号为分隔符,取第1,3,7列; 3 统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序。 Ss可以查看本机连接数,配合grep进行筛选已经建立连接的会话;通过tr -进行压缩;通过cut进行截取相应的列;通过sort进行排序;通过uniq进行去重统计操作; 4 编写脚本createuser.sh,实现如下功能:使用一个用户名做为参数,如果 指定参数的用户存在,就显示其存在,否则添加之;显示添加的用户的id号等信息; 通过read命令来读变量; 通过test进行判断; 通过if进行条件选择; 通过exit指定退出码; 5 编写生成脚本基本格式的脚本,包括作者,联系方式,版本,时间

GNU操作系统的介绍

此生再无相见时 提交于 2020-03-15 01:50:39
GNU操作系统的介绍 GNU是一个自由的操作系统,其内容软件完全以GPL方式发布。这个操作系统是GNU计划的主要目标,名称来自GNU's Not Unix!的递归缩写,因为GNU的设计类似Unix,但它不包含具著作权的Unix代码。GNU的创始人,理查德·马修·斯托曼,将GNU视为“达成社会目的技术方法”。 作为操作系统,GNU的发展仍未完成,其中最大的问题是具有完备功能的内核尚未被开发成功。GNU的内核,称为Hurd,是自由软件基金会发展的重点,但是其发展尚未成熟。在实际使用上,多半使用Linux内核、FreeBSD等替代方案,作为系统核心,其中主要的操作系统是Linux的发行版。Linux操作系统包涵了Linux内核与其他自由软件项目中的GNU组件和软件,可以被称为GNU/Linux(见GNU/Linux命名争议) 历史 GNU操作系统起源于GNU计划,由理查·斯托曼在麻省理工学院人工智能实验室发起,希望发展出一套完整的开放源代码操作系统来取代Unix,计划中的操作系统,名为GNU。1983年9月27日,理查·斯托曼在 net.unix-wizards 和 net.usoft新闻组中公布这项计划理查德·斯托曼通过使用变化单词的各种手法来选择名称,包括曲目斯托曼的目标是成立一个完全自由的操作系统,他希望电脑用户是能够“自由使用”的。因为在20世纪60年代和70年代 -

Linux启动过程详解

馋奶兔 提交于 2020-03-15 01:43:55
启动 第一步 --加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了。 启动 第二步 --读取MBR 众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。 系统找到BIOS所指定的硬盘的MBR后,就会将其复制到0x7c00地址所在的物理内存中。其实被复制到物理内存的内容就是Boot Loader,而具体到你的电脑,那就是lilo或者grub了。 启动 第三步 --Boot Loader Boot Loader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核做好一切准备。 Boot Loader有若干种,其中Grub、Lilo和spfdisk是常见的Loader。 我们以Grub为例来讲解吧,毕竟用lilo和spfdisk的人并不多。 系统读取内存中的grub配置信息(一般为menu

Linux 简介

半世苍凉 提交于 2020-03-15 00:01:41
Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。 Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 Linux的发行版 Linux的发行版说简单点就是将Linux内核与应用软件做一个打包。 目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。 Linux应用领域 今天各种场合都有使用各种Linux发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用LAMP(Linux + Apache + MySQL + PHP)或LNMP(Linux + Nginx+ MySQL + PHP)组合。 目前Linux不仅在家庭与企业中使用,并且在政府中也很受欢迎。 巴西联邦政府由于支持Linux而世界闻名。 有新闻报道俄罗斯军队自己制造的Linux发布版的,做为G.H.ost项目已经取得成果.

linux中的计算【转】

拟墨画扇 提交于 2020-03-14 23:48:42
shell中的赋值和操作默认都是字符串处理,在此记下shell中进行数学运算的几个特殊方法,以后用到的时候可以来看,呵呵 1、错误方法举例 a) var=1+1 echo $var 输出的结果是1+1,悲剧,呵呵 b) var=1 var=$var+1 echo $var 输出结果是1+1,依然悲剧,呵呵 2、正确方法 1)使用let var=1 let "var+=1" echo $var 输出结果为2,这次没有悲剧 注意: a)经我测试let几乎支持所有的运算符,在网上看到一篇文章说“let不支持++、--和逗号、(、)”,但经我测试自加、自减、以及括号的优先级都得到了很好的支持 b)方幂运算应使用“**” c)参数在表达式中直接访问,不必加$ d)一般情况下算数表达式可以不加双引号,但是若表达式中有bash中的关键字则需加上 e)let后的表达式只能进行整数运算 2)使用(()) var=1 ((var+=1)) echo $var 输出结果为2 注意: (())的使用方法与let完全相同 3)使用$[] var=1 var=$[$var+1] echo $var 输出结果位2 注意: a)$[]将中括号内的表达式作为数学运算先计算结果再输出 b)对$[]中的变量进行访问时前面需要加$ c)$[]支持的运算符与let相同,但也只支持整数运算 4)使用expr var=1

ICE专题:ICE在Linux下的安装

浪子不回头ぞ 提交于 2020-03-14 22:23:48
Ice的安装 从年初的一期《程序员》杂志上了解到ICE以后,因为其对比于 CORBA具有简单、高效、易用的特点,所以一直都有留意。之前也有一段时间下载了Ice 1.x版本和相应的文档来研究,但因工作忙,中断了一段时间。 Ice的主页: http://www.zeroc.com 这几天工作稍微轻松点,有点时间,就继续研究Ice 2.1.1版本。在学习的过程中,免不了要安装的。这篇文章就是想说说安装的问题。 其实Ice-2.1.1安装算是蛮简单的。因为像比较新的Linux操作系统上,Ice所需的辅助软件包都已经有了,如果你装的系统确实没有这些软件,可以在Ice的下载页面上下载到第三方的软件包,然后安装,安装这些都不难,主要是要看软件相应的readme和install类型的文档。 我在Fedora 3上安装,上面带了expat, openssl, db4.2, bzip2,所以基本不用装第三方的软件。唯一一个问题是:Fedora 3上的db4.2没有安装db的C++开发库,所以需要重新编译安装db。 =========== STEP 1:安装db ============================= 安装db的文档在db包的docs里面有html格式的说明文档,很简单。解开db的tar/zip包后: $cd db-ver $cd build_unix $../dist

Linux shell必知必会

我的梦境 提交于 2020-03-14 20:42:44
我个人很喜欢使用 Linux 系统,虽然说 Windows 的图形化界面做的确实比 Linux 好,但是对 脚本 的支持太差了。一开始有点不习惯 命令 行操作,但是熟悉了之后反而发现移动鼠标点点点才是浪费时间的罪魁祸首。那么对于 Linux 命令 行,本文不是介绍某些命令的用法,而是说明一些简单却特别容易让人迷惑的细节问题。 1、标准输入和命令参数的区别。 2、在后台运行命令在退出终端后也全部退出了。 3、单引号和双引号表示字符串的区别。 4、有的命令和sudo一起用就 command not found。 一、标准输入和参数的区别 这个问题一定是最容易让人迷惑的,具体来说,就是搞不清什么时候用管道符|和文件重定向>,<,什么时候用变量$。 比如说,我现在有个自动连接宽带的 shell 脚本 connect.sh,存在我的家目录: $ where connect.sh /home/fdl/bin/connect.sh 如果我想删除这个脚本,而且想少敲几次键盘,应该怎么操作呢?我曾经这样尝试过: $ where connect.sh | rm 实际上,这样操作是错误的,正确的做法应该是这样的: $ rm $(where connect.sh) 前者试图将where的结果连接到rm的标准输入,后者试图将结果作为命令行参数传入。

Linux系统系统盘扩容

北慕城南 提交于 2020-03-14 20:22:17
  在Linux学习过程中,可能会遇到根目录存储空间不足的问题,这时候如果只是新增一块硬盘并挂载到某个目录上,还需要将数据转移至新的硬盘中才能缓解存储压力。这种操作未免有些繁琐,那可不可以 直接对跟目录进行扩容 呢?当然是可以的,接下来就给大家介绍操作步骤:    实验环境: RHEL7系统(默认已部署LVM)、VMware Workstation 12虚拟软件    第1步: 给虚拟机新增一块20GB的硬盘    第2步: 查看系统盘的分区类型,最后记得输入q不保存退出 [root@linuxprobe ~]# fdisk /dev/sda Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p //输入p查看分区信息 Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes

linux环境 安装chromedriver 和 phantomjs的方法

家住魔仙堡 提交于 2020-03-14 18:49:25
1 首先要下载浏览器驱动:   常用的是chromedriver 和phantomjs   chromedirver下载地址:   https://npm.taobao.org/mirrors/chromedriver   phantomjs下载地址:   http://phantomjs.org/download.html   使用chromedriver要保证有chrome浏览器 2 安装   phantomjs:     将下载好的文件 解压缩(此处版本用xxx代替了)     tar -xvf phantomjs-xxxx.tar.bz2     将压缩结果移动到系统中软件应该呆在的地方去(此处版本用xxx代替了)     sudo mv phantomjsxxx /usr/local/src/phantomjs     创建软连接到系统环境 这样就可以使用phantomjs命令了     sudo ln -sf /usr/local/src/phantojs/bin/phantomjs /usr/local/bin/phantomjs     将软连接 添加执行的权限     sudo chmod u+x,o+x /usr/local/bin/phantomjs     检验一下正常使用: 返回版本信息就代表能正常使用     phantomjs --version  

Linux rm -rf删除文件后的恢复

我们两清 提交于 2020-03-14 18:03:02
Linux rm -rf删除文件后的恢复 摘要: 大家好我是历史,身为liunx系统管理员,rm命令是不是经常在用呢?有没有做过rm命令以后,瞬间感觉无语的时候!让大家看看我的血的教训! 果真感觉蛋疼了,欲哭无泪啊!写了一天的成果,想着把之前备份的文件删除 大家好我是历史,身为liunx系统管理员,rm命令是不是经常在用呢?有没有做过rm命令以后,瞬间感觉无语的时候! 让大家看看我的血的教训! 果真感觉蛋疼了,欲哭无泪啊!写了一天的成果,想着把之前备份的文件删除呢,结果把刚写完的删了。 国外著名linx管理员守则中有这么一条:“慎用rm -rf命令,除非你知道此命令将带来什么后果。” 可见这个命令的重要性啊,书中看到的这句话,确实很对。 说了这么多,教教大家执行了rm命令后 该这么办吧,是有办法回复的,我刚经过试验证实了,google有一个开源的包 叫ext3grep工具他可以回复删除的文件,甚至是drop database xcy; 对,就是误删除的数据库都可以回复。 先说一下他的工作原理吧,然后我在把试验分享给大家, 工作原理其实也不难,这个工具需要在ext3或者ext4 的文件系统上才可以实现,因为ext3文件系统是日志型文件系统,ext3文件系统储存信息的时候是由inode号和block块存储的。 神马? 不知道什么是inode号?和block块? 好吧,在说明白点,比如