菜鸟学习Linux(一)

Linux简介: 

Linux是一个自由的,免费的,源码开放的操作系统。也是开源软件中最著名的例子。其最主要的目的就是为了建立不受任何商品化软件版权制约的,全世界都能使用的类Unix兼容产品.而我们将服务器部署在Linux将会更加的稳定、安全、高效以及出色的性能这时windows无法比的。

与Linux相关的常用软件:redhat

Red Hat(红帽)公司(NYSE:RHT)是一家开源解决方案供应商,也是标准普尔500指数成员。总部位于美国北卡罗来纳州的罗利市,截止2015年3月3日,共有80多个分公司。红帽公司为诸多重要IT技术如操作系统、存储、中间件、虚拟化和云计算提供关键任务的软件与服务。红帽的开放源码模式提供跨物理、虚拟和云端环境的企业运算解决方案,以帮助企业降低成本并提升效能、稳定性与安全性。红帽公司同时也为全球客户或通过领先合作伙伴为客户提供技术支持、培训和咨询服务。

学习Linux的第一步

虚拟机的使用(因为在Linux系统下操作,从菜鸟到大神是一个时间与知识,练习与积累的过程,为了走好第一步,建议大家在linux环境下也使用虚拟机,避免因为操作不慎而造成不必要的损失~)

rht-vmctl start desktop  开启desktop虚拟机

rht-vmctl view desktop 显示desktop虚拟机

Rht-vmctl poweroff desktop 关闭desktop 虚拟机

进入Linux系统

普通用户与超级用户

用最通俗的话来讲,root在linux里面拥有所有的系统权限,可以“畅行无阻”地修改所有系统文件和其他用户的文件,挂载文件系统等等的一系列操作,因为linux内核执行进程的过程中,首先检查进程所属,如果属于root则一切“放行”!普通用户则有很大的限制,例如不能修改系统关键配置文件,想查看其他用户的文件则需要相应的权限,不能安装软件,甚至关机关机指令(shutdown或poweroff)都需要以root身份执行(sudo)
系统登录:图形登录方式 文本登录方式
工作界面的转换:crtl+alt+上|下
系统重启:reboot | init6 | shutdown -r now
系统关机:poweroff | init 0 | shutdown -h now
锁屏:crlt+alt+L

1.行提示符

Kiosk  打开shell的用户

@      分隔符

Foundation0  主机名称

Desktop  工作目录名称

$         身份提示符# 表示超级用户 $表示普通用户)

2.切换用户

su - username (注意前后都有空格 )

 

3.命令

 Linux的命令有很多,只凭记忆来使用往往十分艰辛事半功倍,在此,我们以几个基础命    令来以点概面的学习

 

 授人以鱼不如授人以渔,掌握以下帮助命令,可以让你在看到一个不熟悉的命令时更好的

 whatis ..(通过这个我们可以查看命令的功能) 同理还有命令 --help

 

 

 

 b.简单的系统命令

 date

显示2016924 日的后83是什么日子

把系统时间设定为1118120555

passwd

锁定账号

设定student用户密码最长有效期为7

设定student用户密码警告期为2

c.file

d.history

Linux使用小技巧

 

                                                                                              

Linux系统结构:Linux是一个倒树结构,中所有东西都是文件(“/”/就是根目录)目录以下为二级目录(eg:/bin  /etc)

什么是绝对路径什么事相对路径?

绝对路径:文件在系统中的真实位置,文件名字以“/”开头

eg:(/usr,/usr/local)

相对路径:文件相对于当前位置的一个名字的简写(不以“/”开头)

eg:如果当前目录在/usr下,local则表示的绝对路径为/usr/local,从/usr查找下一个为local的目录。

文件的管理:

touch  建立文件或者修改文件的时间戳

touch file  建立一个file文件

mkdir  建立目录

mkdir xxxx    创建一个名为xxxx的目录

mkdir –p   递归创建多级目录(eg: 默认的mkdir一次只能创建一层目录,如果在当前目录下创建一个div/css/layout 的目录就需要逐层逐层的先创建div,再创建div/css 再创建div/css/layout,然而我们希望能让程序自动帮我们完成这个过程。)

rm 删除目录或文件

rm –f 强制删除不提示

rm –r 删除目录

cat

cat – n 对输出的所有行编号,由1开始对所有输出的行数编号

cat | head |tail

eg:

1、查看最后1000行的数据

cat filename | tail -n 1000
2、查看1000到3000行的数据

cat filename | head -n 3000 | tail -n +1000

注意:

tail-n 1000打印文件最后1000行的数据
     tail -n +1000 打印文件第1000行开始以后的内容

cd:切换工作目录

cd //// 切换工作目录到指定的目录////

cd -    切换工作目录到之前所在的目录

cd ~    切换到自己的家目录

cd ..   进入当前目录的上级目录

cd /    进入系统的根目录

mv:  移动或重命名

mv file1 file2   移动文件file1到file2中

mv file  file3(还未建立的不存在的文件)   重命名file文file3

 

正则表达式

 


符号


意义


*


任意位的任意字符



一个任意字符


^


取反


字符类


释义


[:alnum:]


匹配单个数字


[:word:]


[:alnum:]加上下划线_


[:alpa:]


匹配单个字母


[:lower:]


匹配单个小写字母


[:upper:]


匹配单个大写字母


[:space:]


匹配单个空格


[:punct:]


匹配单个符号

{1..9}    1-9

{a..f}     a-f

{1,3,5}   135

{a,b,c}   abc

{1..3}{a..c}   1a 1b 1c 2a 2b 2c 3a3b 3c

注意:{ }表示不存在或者存在的

[a-C]      aA bB       cC

[a-c]      aA或者bB  或者c

[1-3]    1或者2或者3

[568]   5或者6或者8

[^abc]|[!abc]   除了a并且除了b并且除了c

注意:[ ]表示存在的

~   当前用户的家目录(区别于cd~ :切换到自己的家目录)

~ username  指定用户的家目录

~+         当前目录

~-          当前目录之前所在目录

.           当前目录

..           当前目录的上一级

管理输入输出

linux系统中,正确输出的编号为1,错误输出的编号为2

在系统中用普通用户登录执行 find /etc  -name passwd

会发现有些文件没有执行权限  所以在文件的输入输出中我们会用到重定向

find /etc  -name passwd >file     重定向正确输出

find /etc  -name passwd 2>file    重定向错误输出

find /etc  -name passwd &>file    重定向全部输出

注意:>  2> &>   这些都会覆盖原文件的内容

find /etc  -name passwd >>file     追加正确输出

find /etc  -name passwd 2>>file    追加错误输出

find /etc  -name passwd &>>file    追加全部输出

注意:>>  2> > &>>  不会覆盖原文件的内容,会把相应的输出字符放到文件的最后

管道:作用是将前一条命令的输出变成管道后命令的输入

eg:ls -l | more

该命令列出当前目录中的任何文档,并把输出送给more命令作为输入,more命令分页显示文件列表。

 

man

Linux提供了丰富的帮助手册,当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。

man 5  passwd  查看/etc/passwd文件的帮助

man 1  passwd  查看passwd命令的帮助(1可以省略)

man页面的快捷方式

上下键            向上或者向下一行

pageup|pagedown   向下一个屏幕或向上一个屏幕

d|u                向下或向上半个屏幕

G|gg                跳转页面到man最下面或者最上面

/关键字            搜索关键字,关键字会高亮,n向下匹配,N向上匹配

q                   退出


 练习~~~

<<<第一单元练习题>>>

1.用student用户登陆系统图形界面

2.打开一个bash

3.修改student的密码,把密码更新成"T3st1ngtlme"(主机字母和数字)

passwd   student

4.显示当前系统时间 date

5.显示当前系统时间,显示格式为:"小时:分钟:秒 AM/PM"(AM/PM为上下午标识)

Date +%X%p

6.显示“/usr/bin/clean-binary-files”的文件类型  file

7.统计“/usr/bin/clean-binary-files”的文件大小   wc-l wc-w wc-m wc-c

8.用快捷方式在shell中调用已经执行过的第4条命令  history !4

9.用快捷方式执行最近一条含有"date"关键字的命令     crtl + R + date


<<<第二单元练习>>>

1.用命令和正则表达式按照要求建立文件 *)用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6) WESTOS {1..2}{1..6} *)这些文件都包含在root用户桌面的study目录中 /root/Destop *)用一条命令建立8个文件redhat_versionX(x的范围为1-8)

*)redhat_virsionX这些文件都包含在/mnt目录中的VERSION中 mkdir /mnt/VERSION/ /mnt/VERSION/redhat_version{1..8}

2.管理刚才信建立的文件要求如下 *)用一条命令把redhat_versionX中的带有奇数的文件复制到桌面的SINGLE中  cp / redhat_version{1,3,5,7,9} *)用一条命令把redhat_versionX中的带偶数数的文件复制到/DOUBLE中  cp / redhat_version[246810] *)用一条命令把WESTOS_classX_linuxY中class1的文件一动到当前用户桌面的CLASS1中   mv WESTOS_class1_linuxY CLASS1 *)用一条命令把WESTOS_classX_linuxY中class2的文件一动到当前用户桌面的CLASS2中   mv WESTOS_class2_linuxY/class1 CLASS2 3.备份/etc目录中所有名字带有数字并且以.conf结尾的文件到桌面上的confdir中 cp /etc/*[[:digit:]]*.conf /root/Desktop/confdir  5.删掉刚才建立或者备份的所有文件 rm -rf *


<<<第四单元练习>>>

1.在student用户下执行find /etc -name passwd 命令,并管理其输出要求如下:

* 显示所有正确输出,屏蔽错误输出

find/etc -name passwd > file | cat file

* 保存正确数出到/mnt/find.out,错误数出到/mnt/find.err中

find/etc -name passwd >/mnt/find.out

find/etc -name passwd 2>/mnt/find.err

* 建立/mnt/find.all文件,并且保存所有输出到此文件中

touch /mnt/find.all

find/etc -name passwd &> /mnt/find.all

* 再次保存所有输出到/mnt/find.all中,并且保持源文件内容

find/etc -name passwd &>> /mnt/find.all

* 屏蔽此命令的所有输出

find/etc -name passwd &>> /dev/null

* 显示此命令的所有输出并保存输出到桌面上的任意文件中

find /etc-name passwd 2&1 | tee /root/desktop

* 保存正确输出到/mnt/find.out.1中,屏蔽错误输出

find/etc -name passwd 2> | /dev/null

本人是菜鸟级别的Linux初学者,如有错误,欢迎大家指正 在此谢谢大家啦

 

                                                                                              

时间: 2024-10-12 11:51:48

菜鸟学习Linux(一)的相关文章

菜鸟学习Linux LVM及配置实战

每当我们生产上线服务器的时候,总是无法正确的预估磁盘大小该给多少,这样就产生了一个技术LVM,什么是LVM?LVM是 Logical Volume Manager(逻辑卷管理),它是Linux环境下对磁盘分区进行管理的一种机制.这里菜鸡哥哥画一个图,是我自己的理解,如果有错误请指正!!那么如何使用lvm呢? [[email protected] ~]# fdisk -l Disk /dev/sda: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors

1.菜鸟的linux学习之路------linux初体验

脚本编程语言通常是解释型的.这类程序的执行,是由解释器读入代码,并将其转换成内部的形式,在执行.请注意,解释器本身是一般的编译型程序. 常用的脚本编程语言有 :awk,Perl,Python,Ruby,Shell.这里的Ruby是日本人研发的. 注释: linux : 1.rm 删除指定的文件 例:rm /Users/apple/Desktop/QQDock.plist 2.假设你想知道现在的系统有多少人在登录,那么 who命令可以实现 3.|管道符号可以在两个程序之间建立管道:who的输出,成

菜鸟学习计划浅谈之Linux系统 原

人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学习中的学习经验心得,慢慢提升自己,才能从一个菜鸟升级到大虾.虽然这个过程是艰辛的,但是任何成功都缺不了坚持和付出,没有人可以不劳而获,怎样才能使平凡的自己变得不平凡,那就是要努力.这段时间我一直在学Linux,那么今天,我就谈谈我一个Linux菜鸟的学习心得. 首先说说我为何要学习Linux.其实,

菜鸟学习计划浅谈之Linux系统

人这一生都是在不断地学习,不断地进步中度过的,刚开始学习任何一门知识的时候,我们都习惯性的称自己为菜鸟,觉得自己对这方面的知识欠缺,水平很low,我也是如此.但我擅长总结,对于自己学习的新知识,总结学习中的学习经验心得,慢慢提升自己,才能从一个菜鸟升级到大虾.虽然这个过程是艰辛的,但是任何成功都缺不了坚持和付出,没有人可以不劳而获,怎样才能使平凡的自己变得不平凡,那就是要努力.这段时间我一直在学Linux,那么今天,我就谈谈我一个Linux菜鸟的学习心得. 首先说说我为何要学习Linux.其实,

给学习Linux系统小白的两三个建议

前段时间看过一个针对国内Linux使用情况的调研表,有了不少感慨.现在听说过linux,会一点linux基本操作的人多如牛毛,然而真正能用linux做一点事情的确少之又少.无论是公司还是学校,办公基本上都基于win.这也造成了国人不习惯接触linux的主要原因. 看到好多人,学了点基础操作命令,就在那里意气风发,觉得新世界大门就在眼前,抬起脚就能走进去.但其实,他们距离大门还有很长很长的一段充满荆棘的道路.如果不是相关专业的人接触linux,那么,就说明这个人有很强的好奇心,这是一个学习linu

写给准备学习Linux的人

现在国人学习linux的情况也是这样,学linux的人个个都意气分发,以为学习linux会用linux是多么了不得.学了一点皮裘就以为很牛了.但是那些企业用人单位却很难找到真实合适的linux人材.因而,我想就目前的情况宣布一下我的观点. 首先,这篇文章是写给那些想成为linux高手,并真正想用linux做些事情的人.如果你只想做一个菜鸟,没事的时候在你双系统启动的电脑上偶尔选一次 linux,然后没事进去偷着乐,那就请你自便.另外,我想说明,和真正的牛人比起来,我自己还处于一个比较低的水平.我

本人亲身讲解本科期间学习Linux系统过程

学习Linux也有一段时间了,回首这段时光,既迷茫过也既充实过.当时刚接触Linux是在大学,身边的同学都在学习,我想我也该学点一技之长了.我本科并不是计算机专业的,关于软件的课程也就只有C++,所以想要学习Linux得多花课余时间. 高考完选择专业的时候自己并不是很清楚,也并不知道自己专长在哪里,专业的选择全靠家人给选.上了大学,慢慢的发现自己对一些软件编程感兴趣,正好,学校开设了Linux的选修课程,于是我就毫不犹豫的选修了这门课.在我学习的过程中,我发现了一本真的很适合初学者的书叫<Lin

从超级菜鸟变成Linux系统高手

正如许多小伙伴一样,我们都是从菜鸟开始,逐渐变成高手,而在这一成长的过程中,好多鸟没有坚持下来,而放弃看不到未来的光明.要给自己一个合理的规划适当的安排,高效率的学习方式,才能更快成长,而非原地跳步.我给大家介绍下我自己的学习历程,希望可以帮助到大家. 1.准备选择一款Linux发行版 首先了解下,什么是Linux和自己的需求,经常看到有人问用什么版本的Linux好,其实只要你认真学习,那个版本都好,讨论什么版本好否从本质上说没有一点意义,所有的发行版本都是基本Linux内核开发的,只不过是外表

【菜鸟学Linux】Cron Job定期删除Log(日志)文件

以前一直做Windows开发,近期的项目中要求使用Linux.作为小菜鸟一枚,赶紧买了一本经典书<鸟哥的Linux私房菜>学习.最近刚好有一个小任务 - 由于产品产生的Log很多,而且增长很快,所以需要用脚本(Bash scripts)删除过期的Log文件. 使用Linux下的Cron Job可以很好的解决这个问题. 什么是Cron Job? 建立Cron Job需要用到命令crontab,维基百科定义:crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令.