linux学习

Linux系统日常维护命令

2020年6月20日 van 0

1.1.1 查看修改主机IP地址命令

查看IP方法一:ifconfig

查看IP方法二:

cat /etc/sysconfig/network-scripts/ifcfg-eth0

修改主机IP

#vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改IPADDR,NETMASK,GATEWAY的值

#service 阅读全文

No Image

centos7安装GNOME桌面窗口软件

2020年6月20日 van 0

给服务器安装桌面环境会降低服务器的性能,如果是线上环境不建议去安装桌面环境,安装桌面环境的好处是便于更方便的学习linux系统。

1.安装GNOME桌面窗口软件
阅读全文

No Image

Linux编程与应用

2020年6月20日 van 0

编程与应用题:

1.用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下。

参考程序:

#!/bin/sh

FILENAME=

echo “Input file name:”

阅读全文

No Image

Linux常见选择题

2020年6月20日 van 0

Linux常见选择题

1. 下面的网络协议中,面向连接的的协议是: A 。

A 传输控制协议 B 用户数据报协议 C 网际协议 D 网际控制报文协议

2. 在/etc/fstab文件中指定的文件系统加载参数中, 阅读全文

No Image

Linux常见问题

2020年6月20日 van 0

1. 在Linux系统中,以 文件 方式访问设备 。

2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统。

3. Linux文件系统中每个文件用 i节点 来标识。

4. 阅读全文

linux学习

新手如何学习linux命令

2017年12月11日 van 0

初学者如何学习linux操作系统?网络之家觉得要向学习linux首先要多敲命令,只有经过实践思考过后才知道为什么这么操作,那么学习linux需要哪几点进行呢?下面网络之家教你怎么学习linux。
对于学习linux命令之前当然需要安装个linux系统,学习linux命令首先可以选择自己喜欢的linux发行版,例如常用的ubuntu、centos、redhat等。可以先安装一个虚拟机VMware Workstation Pro,在里面安装好linux系统先练习一下,熟练后再安装到实体机器上。
关于linux命令可以先从软件的安装命令,文件的操作命令开始学习。
第一点对于初学者首先是熟悉是文件目录了解与操作,像ls、cd、mv、rm等常用命令的使用。
例如下面这些常见的命令要学会
ls: 列出目录的内容
cd: 改变工作目录
chmod: 改变文件权限
cp: 将文件 copy 到另一文件或目录
mkdir: 创建目录
rm: 删除文件或目录
mv: 文件或目录的移动或更名
grep: 按给定模式搜索文件 (文件所含内容检索)
head: 显示指定文件前若干行
cat: 在标准输出上显示或连接文件
像上面这种常见的命令要记住,经常敲的话会很容易,懂得使用man命令查看命令的使用
第二点接着熟悉vi、vim等常用编辑工具的使用。
第三点学习在linux系统中软件的安装卸载命令,学会如何在linux系统中安装与卸载软件命令。
第四点对linux中文件权限等学习,了解linux系统中权限的查看与设定。
第五点深入了解linux中用户组的概念,以及相关的创建删除改变用户组等操作的命令。
第六点学习shell编程,加大对linux有的理解,并且在shell中灵活的运用自己之前的学的命令。
第七点然后就是学习linux系统中各种服务器配置维护优化,像从常见的samba、ftp、lamp等的配置,优化服务器的效率,可以从中学到linux系统中关于服务器中很多很实用的技巧。
网络之家提醒对于初次学习linux的人来说,可能会发现命令行操作这个好难,因为大多数人刚开始接触的是Windos系统,其实学习linux个人感觉在于积累,每天掌握一些命令,那么坚持一段时间之后,自然就会熟悉敲的命令了,学会命令行解决办法后,会发现喜欢linux的高效。

linux学习

linux学习vim编辑器

2017年11月6日 van 0

linux学习vim编辑器常用命令
为什么要学习vim编辑器?
Linux的命令行界面下面有非常多的文本编辑器。比如常听说的就有Emacs、pico、nano、joe与vim等。vim可以看做是vi的高级版。为什么一定要学习vim呢?有下面几个原因:
(1)很多软件的编辑接口都会主动调用vi。
(2)所有的Unix like系统都会内置vi文本编辑器,其他的文本编辑器则不一定会存在。
(3)vim具有程序编辑的能力,可以主动以字体颜色辨别语法的正确性,方便程序设计。
(4)程序简单,编辑速度快。
二、下面先介绍一下vi的基本使用方法及其相关命令。
vim编辑器的三种模式:一般模式、编辑模式和命令行模式。
在一般模式中可以进行删除、复制和粘贴的功能,但是无法编辑文件内容。
从一般模式切换到编辑模式可以按下i、I、o、O、a、A、r、R键。按下Esc键可以回到一般模式。
在一般模式中输入:、/、?三个中的任意一个可以将光标移到最下面的一行。在这个模式中可以提供查找数据的操作,而读取、保存、大量替换字符、离开vii、显示行号等操作则是在此模式中完成的。需要注意的是,编辑模式与命令行模式之间是不能互相切换的。

下面列出平时用的最多的vi命令:
移动光标的方法:
[Ctrl]+[b]:屏幕向上移动一页,相当于[PageUp]按键。
[Ctrl]+[f]:屏幕向下移动一页,相当于[PageDown]按键。
0或功能键[Home]:移动到这一行的最前面字符处。
$或功能键[End]:移动到这一行的最后面字符处。
G:移动到这个文件的最后一行。
gg:移动到这个文件的第一行,相当于1G.
N[Enter]:N为数字,光标向下移动N行。
查找和替换:
/word:向下寻找一个名称为word的字符串。
?word:向上寻找一个名称为word的字符串。
:n1,n2s/test1/test2/g:在第n1行和n2行之间寻找test1这个字符串,并且将其替换为test2.
:1,$s/test1/test2/g:从第一行到最后一行寻找test1这个字符串,并且将其替换为test2.
:1,$s/test1/test2/gc:从第一行到最后一行寻找test1这个字符串,并且将其替换为test2.且在替换前显示提示字符给用户确认是否需要替换。
删除、复制和粘贴:
yy:复制光标所在的一行。
nyy:复制光标所在的向下n行。
x,X:在一行字中,x为向后删除一个字符(相当于[Del]键),X为向前删除一个字符(相当于[Backspace])。
dd:删除光标所在的一整行。
ndd:删除光标所在的向下n行。
p,P:p为将已复制的内容在光标的下一行粘贴,P则为粘贴在光标的上一行。
u:复原前一个操作。
[Ctrl]+r:重做上一个操作。
.:小数点,重复前一个操作。
一般模式切换到编辑模式:
i,I:进入插入模式,i为从目前光标所在处插入。I为在目前所在行的第一个非空格字符处开始插入。
a,A:进入插入模式。a为从目前光标所在处的下一个字符处开始插入。A为从所在行的最后一个字符处开始插入。
r,R:进入替换模式。r只替换光标所在那个字符一次。R会一直替换光标所在字符,直到按下Esc键。
o,O:进入插入模式。o为在下一行插入。O为在上一行插入。
一般模式切换到命令行:
:w:将编辑的数据写入到硬盘中。
:q:离开vi.后面加!为强制离开。
:wq:保存后离开。:wq!为强制保存后离开。

目前主要的编辑器都有恢复功能,vim也不例外。vim是通过“保存”文件来挽回数据的。
每当我们在用vim编辑时,vim都会自动在被编辑的文件的目录下面再新建一个名为filename.swap的文件。这就是一个暂存文件,我们对文件filename所做的操作都会被记录到这个文件当中。如果系统意外崩溃,导致文件没有正常保存,那么这个暂存文件就会发挥作用。下面用一个例子来说明(Note:我用的是Ubuntu)。
打开终端,输入命令,将etc目录下面的manpath.config复制到tmp目录下面,并且更改当前工作目录为tmp:
cp /etc/manpath.config /tmp
cd /tmp
用vim编辑manpath.config文件:vim manpath.config。
我们在vim的一般模式下按下Ctrl+z组合键,vim就会被丢到后台执行。回到命令提示符环境后,我们模拟将vim的工作不正常中断。
kill -9 %1;强制杀死制定的进程。
这样导致暂存盘无法通过正常的流程结束,所以暂存文件不会消失,而是继续保留下来。当再次编辑那个文件时(输入命令vim manpath.config),出现(ubuntu 11.10):
想不起 display:inline-block 是做什么的小伙伴们,单击“元素分类–内联块状元素”可返回到前面小节进行复习。

这时,有六个按钮可以使用:
O(pen for Read-Only):打开成只读文件。
E(dit):用正常方式打开要编辑的文件,并不会载入暂存文件的内容。这很容易出现两个用户相互改变对方的文件的问题。
Q(uit):不进行任何操作,回到命令行。
A(bort):忽略这个编辑行为,和Q类似。
R(ecover):加载暂存文件的内容。
D(elete):如果你确定这个暂存文件是没有用的,则可以删除。

需要注意的是:这个暂存文件不会应为你结束vim后自动删除,必须要手动删除。否则每次打开对应的文件时都会出现这样的提示。
linux学习vim编辑器常用命令解析

linux学习

linux学习查看网络与用户登录日志

2017年11月1日 van 0

linux学习查看网络:

# ifconfig # 查看所有网络接口的属性

# iptables -L # 查看防火墙设置

# netstat -s # 查看网络统计信息

# route -n # 查看路由表

# netstat -lntp # 查看所有监听端口

# netstat -antp # 查看所有已经建立的连接

 

linux学习查看用户:

# w # 查看活动用户

# id <用户名> # 查看指定用户信息

# last # 查看用户登录日志

# crontab -l # 查看当前用户的计划任务

# cut -d: -f1 /etc/passwd # 查看系统所有用户

# cut -d: -f1 /etc/group # 查看系统所有组

linux学习查看进程:

# ps -ef # 查看所有进程

# top # 实时显示进程状态

linux学习查看服务:

# chkconfig –list # 列出所有系统服务

# chkconfig –list | grep on # 列出所有启动的系统服务

linux学习查看程序:

# rpm -qa # 查看所有安装的软件包

linux学习

linux学习常用的日志分析命令

2017年11月1日 van 0

linux学习常用的日志分析命令
cat

cat – 连接文件,并输出结果

cat 命令非常的简单,你从下面的例子可以看到。

jfields$ cat order.out.log

你可以用它来连接多个文件
8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99
就像它的说明描述的,你可以用它来连接多个文件。
jfields$ cat order.*
8:22:20 111, Order Complete
8:23:50 112, Order sent to fulfillment
8:24:20 113, Refund sent to processing
8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99
如果你想看这些log文件的内容,你可以把它们连接起来并输出到标准输出上,就是上面的例子展示的。这很有用,但输出的内容可以更有逻辑些。

grep

grep, egrep, fgrep – 打印出匹配条件的文字行

假设我们只对Patterns of Enterprise Architecture这本书的订单感兴趣。使用grep,我们能限制只输出含有Patterns字符的订单。
jfields$ cat order.* | sort | grep Patterns
8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99
假设退款订单113出了一些问题,你希望查看所有相关订单——你又需要使用grep了。
jfields$ cat order.* | sort | grep “:\d\d 113, ”
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:24:20 113, Refund sent to processing
你会发现在grep上的匹配模式除了“113”外还有一些其它的东西。这是因为113还可以匹配上书目或价格,加上额外的字符后,我们可以精确的搜索到我们想要的东西。
现在我们已经知道了退货的详细信息,我们还想知道日销售和退款总额。但我们只关心《Patterns of Enterprise Architecture》这本书的信息,而且只关心数量和价格。我现在要做到是切除我们不关心的任何信息。

cut

cut – 删除文件中字符行上的某些区域

又要使用grep,我们用grep过滤出我们想要的行。有了我们想要的行信息,我们就可以把它们切成小段,删除不需要的部分数据。
jfields$ cat order.* | sort | grep Patterns
8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

jfields$ cat order.* | sort | grep Patterns | cut -d”,” -f2,5
1, 39.99
-1, 39.99
现在,我们把数据缩减为我们计算想要的形式,把这些数据粘贴到Excel里立刻就能得到结果了。
cut是用来消减信息、简化任务的,但对于输出内容,我们通常会有更复杂的形式。假设我们还需要知道订单的ID,这样可以用来关联相关的其他信息。我们用cut可以获得ID信息,但我们希望把ID放到行的最后,用单引号包上。
sort

sort – 文件里的文字按行排序

此时sort命令显然是你最佳的选择。
jfields$ cat order.* | sort
8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:22:20 111, Order Complete
8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99
8:23:50 112, Order sent to fulfillment
8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99
8:24:20 113, Refund sent to processing
就像上面例子显示的,文件里的数据已经经过排序。对于一些小文件,你可以读取整个文件来处理它们,然而,真正的log文件通常有大量的内容,你不能不考虑这个情况。此时你应该考虑过滤出某些内容,把cat、sort后的内容通过管道传递给过滤工具。

uniq

uniq – 删除重复的行

下面的例子展示了如何过滤出跟书相关的交易,删除不需要的信息,获得一个不重复的信息。
jfields$ cat order.out.log | grep “\(Kindle\|Hardcover\)” | cut -d”,” -f3 | sort | uniq -c
1 Joy of Clojure
2 Patterns of Enterprise Architecture
看起来这是一个很简单的任务。
这都是很好用的命令,但前提是你要能找到你想要的文件。有时候你会发现一些文件藏在很深的文件夹里,你根本不知道它们在哪。但如果你是知道你要寻找的文件的名字的话,这对你就不是个问题了。
sed

sed – 一个流编辑器。它是用来在输入流上执行基本的文本变换。

下面的例子展示了如何用sed命令变换我们的文件行,之后我们在再用cut移除无用的信息。
jfields$ cat order.* | sort | grep Patterns \
>| sed s/”[0-9\:]* \([0-9]*\)\, \(.*\)”/”\2, ‘\1′”/
1, Patterns of Enterprise Architecture, Kindle edition, 39.99, ‘111’
-1, Patterns of Enterprise Architecture, Kindle edition, 39.99, ‘113’

lmp-jfields01:~ jfields$ cat order.* | sort | grep Patterns \
>| sed s/”[0-9\:]* \([0-9]*\)\, \(.*\)”/”\2, ‘\1′”/ | cut -d”,” -f1,4,5
1, 39.99, ‘111’
-1, 39.99, ‘113’
我们对例子中使用的正则表达式多说几句,不过也没有什么复杂的。正则表达式做了下面几种事情
删除时间戳
捕捉订单号
删除订单号后的逗号和空格
捕捉余下的行信息
里面的引号和反斜杠有点乱,但使用命令行时必须要用到这些。
一旦捕捉到了我们想要的数据,我们可以使用 \1 & \2 来存储它们,并把它们输出成我们想要的格式。我们还在其中加入了要求的单引号,为了保持格式统一,我们还加入了逗号。最后,用cut命令把不必要的数据删除。
现在我们有麻烦了。我们上面已经演示了如何把log文件消减成更简洁的订单形式,但我们的财务部门需要知道订单里一共有哪些书。

less

less – 在文件里向前或向后移动

让我们再回到简单的 cat | sort 例子中来,下面的命令就是将经过合并、排序后的内容输出到less命令里。在 less 命令,使用“/”来执行向前搜索,使用“?”命令执行向后搜索。搜索条件是一个正则表达式。
jfields$ cat order* | sort | less
如果你在 less 命令里使用 /113.*,所有113订单的信息都会高亮。你也可以试试?.*112,所有跟订单112相关的时间戳都会高亮。最后你可以用 ‘q’ 来退出less命令。
find

find – 在文件目录中搜索文件

在上面的例子中我们处理了order.in.log和order.out.log这两个文件。这两个文件放在我的home目录里的。下面了例子将向大家展示如何在一个很深的目录结构里找到这样的文件。
jfields$ find /Users -name “order*”
Users/jfields/order.in.log
Users/jfields/order.out.log
find命令有很多其它的参数,但99%的时间里我只需要这一个就够了。
简单的一行,你就能找到你想要的文件,然后你可以用cat查看它,用cut修剪它。但文件很小时,你用管道把它们输出到屏幕上是可以的,但当文件大到超出屏幕时,你也许应该用管道把它们输出给less命令。
Linux学习常用的log分析命令配置ok