初学LINUX,一些自己的小分享

学linux近一个月了,经常会遇到一些感觉懂了,深究发现又不懂。感觉懂了,一动手就陷入僵局。这是一个来自小白的一些个人的分享,可能十分浅显,可能不算分享,但是分享不就是重在分享嘛!


接下来是我这近一个月自己约到的小麻烦,小见解,和平时暂时经常用到的东西,希望大家有所收获.写的有些杂,不要介意哦!

首先是ls命令:

  这是我们初学linux时最长用到的命令,当时我的老师告诉我, ls + 通配符 或者 文件名 的时候最好是 在ls后跟上 -d 的选项,当时我就很不解,虽然知道-d 是只列出目录,但是为什么就一定要-d 呢? 为什么不加 “-d” 时也不搜索任何东西时ls 的列出就只列出文件夹的目录和文件,而一旦想列出某个想要的东西时,如果不加-d就会出现一大堆东西呢?(ps:当时实践的时候一直在/etc 目录,大家知道那个目录文件很多的) 最后经过我很多次不停的试验,我终于发现了问题所在,假设如果你想要列出 abc 这个文件夹, 当ls 不+ “-d” 时通配列出,那么ls就会自动帮你展开这个文件夹,在下面显示出改文件夹里有的所有东西,但是只展示一级,不向下递归!
   然后我总结的就是,ls不特意指定只列出文件夹时,当你通配一个字符的时候,如果匹配到的是文件夹,那么ls命令只是帮你展开这个文件夹的一级文件,并不是列出的没完没了。之所以会列出,其实就是ls的一个贴心的小功能罢了,可能只是它认为,既然你搜索这个文件,那么你肯定想查看它,干脆我就帮你列出,是不是很贴心?(PS: 我感觉我这个发现很蠢)

然后是tr命令

   这个命令说实话我没有什么发现,也没有什么见解,只是想说一些自己经常遇到的东西,然后对这个命令的一些常用的方法。
   “tr” 命令,我们都知道最长干的事就是转换字符, 在我现在所学的范围内,经常用的就是 “tr -s “ 空格 ” ” 这个命令能够把连续的空格变成一个空格,或者“tr -d “参数”” 批量的去处某个字符。 而且当你需要cut 出某串数据的时候,配合tr -s 尤其的好用

然后是别名

  说实话别名这个东西我用的真的不多,它的使用方法是  alias 新的命令=‘原命令 -选项/参数‘  我想说的是一些我自己对他浅显的理解。 首先这个东西我们可能用的真的不多(ps:仅对于初学者来说的),直到我学会了简单的脚本时,我才发现原来一个复杂而且多功能的自定义别名不就是一个脚本吗? 比如我们可以创建一个别名SuperTouch 并赋予它创建文件,并且把文件直接权限提升 “+x” 那么这样当我们创建一个脚本文件时, 我们就省去了事后再 chmod 修改权限的过程! 是不是轻便了很多? 当然类似的自定义别名就看大家喜好啦!

现在是关于“   " "  ” 

   关于双引号,我只想说我现在还是有一点晕晕的,有时候跟反引号功能差不多,有时候又跟$ 的功能差不多,有时候还能 ( ) 的功能差不多,有时候还。。。。。 总之就是没玩没了,但是我只想说一点! 就是 双引号无论如何一段字符或者命令里都不要用到两对或者以上,因为英文的双引号不分左右有木有!!! 不分左右就是第一个引号,可以和第二个,第三个,第四个。随意对应,不出错就出鬼了!!!!

这个是关于短路或和与的

  讲真,什么与或非啊,从高中的数学我们就开始学了,其他的时候不同的语言,不同的地方,只要是跟计算机沾边,我们都逃不过与或非,这玩意不能多想,想多了你就发现又乱了,所以我把自己的一些小技巧贴出来
在linux中,当一个程序顺利执行完后会返回一个值0 失败了会返回1-255 之间的数字
与: 遇假则结果为假,二者皆真则结果为真,所以与运算,假结果居多
或: 有一个为真则结果为真, 二者皆假结果为假,所以或运算真结果居多
  && 短路与 ,如果前一条命令传递的假 则后面的不要执行。 短路与多是为了求真,即
需要前面的命令传递过来真值 ps:“与更激进所以眼里只有真”

  || 短路或 ,如果前一条命令传递为真 则后面不需要执行。 短路或多是为了求假,即
需要前面的命令传递过来假值 ps:“或更宽容所以能容纳假”

这个是我自己经常犯的错误

写if 判断的时候, 要么if敲完后立刻另起一行,要么老老实实加空格,不然肯定报错!!!!
写if的时候完全可以随心所欲,并不是必须要else 和then 他俩只要出现一个就行,但是前提是你要判断好条件!
另外写完一个小嵌套后还是立刻补上 fi 最好 !

个人的一些小捷径

2>&1 把错误的结果转成正确的结果 速记方法: 看做2>1 2本就大于1 所以最终是这个命题是正确的,就记作,因为2>1 是正确的所以 2>&1 是把错误的输出转化为正确的,因为2>1是正确的.

1>&2 把正确的结果转成错误的结果 速记方法: 看做1>2 而1是小于2的 所以最终是这个命题是错误的,就记作,因为1>2 是错误的所以 1>&2 是把正确的输出转化为错误的,因为1>2是错误的.

ps: 就这样吧,也就学了不到20天,这篇博客也就是说一点自己的小见解,如果让大神看到估计会笑掉大牙,但是没关系啊!至少这个博客见证了我的成长,不是吗?

原文地址:http://blog.51cto.com/13570220/2065731

时间: 2024-10-13 02:10:57

初学LINUX,一些自己的小分享的相关文章

初学Python-搞了一个linux用户登录监测小工具

这几天突发奇想,想学习一下Python.看了点基础,觉得有点枯燥,所以想搞点什么.想了想,就随便弄个检测Linux用户登录的小工具吧~ 首先,明确一下功能: 1.能够捕获 linux 用户登录的信息.(这个很容易,方法比较多) 2.能够将捕捉的信息记录下来.(不然要这信息干嘛……) 3.最好能够一发现有人登陆,就给管理员发个邮件.(这个功能比较实用~) 4.没想好.(功能可以不断完善嘛) 嗯,那现在就要着手解决技术难点了(对我来说可能是难点吧,毕竟才看了几天书……). 1.捕获linux登录信息

Linux生产服务器Shell脚本分享

Linux生产服务器Shell脚本分享 2012-6-6 86市场网 linux 作为一名Linux/unix系统管理员,我经常遇到人问这个问题:shell能做什么?PHP这么强大,为什么不用PHP来完成工作呢?其实相对于PHP这些开发语言而言,shell主要用于数据库备份(SVN备份).计划任务(crontab).服务状态监控.FTP远程备份等.对于这些任务,shell的强大是大家都公认的,这也是每一个Linux/unix系统管理员的基本之一.现在在Windows 2008里也出现了Power

初学Linux之安装CentOs

跟着俊哥初学Linux之 安装CentOS (作者 小野哥) 1        检查BIOS虚拟化支持 2        新建虚拟机 3        新建虚拟机向导 4        创建虚拟空白光盘,稍后安装操作系统,因为初学者越学的多越好,不要怕麻烦 5        安装Linux系统对应的CentOS版 6        虚拟机命名和定位磁盘位置 7        处理器配置,看自己是否是双核.多核 8        设置内存为2GB 9        网络设置NAT或者桥接模式 10

初学linux网络服务之vsftp服务实验

实验拓扑: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 实验一:测试默认安装vsftpd的结果 匿名用户与本地用户都可以登录 匿名用户登录到/var/ftp,只能下载不能上传 本地用户登录到本地用户的家目录,可以上传和下载 服务器端设置 [[email protected] ~]# cd /misc/cd/Server                 //进入RHEL5.9光盘 [[email protected

初学linux网络服务之samba服务实验

实验拓扑: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 实验一:Samba匿名共享 工作组为Tarena 将目录 /usr/src 共享给所有人 共享名设为 tools 允许所有人访问.无需密码验证 访问权限为只读 1.安装软件包 [[email protected] ~]# rpm -q samba-client samba samba-common  //查看安装包 package samba-client

初学linux网络服务之HTTP服务实验

实验拓扑: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 实验一:查看默认HTTP配置 找到默认红帽欢迎页面 (/etc/httpd/conf/httpd.conf ---->Include ----> /etc/httpd/conf.d  ----> welcome.conf  ----> /var/www/error/noindex.html) 前提条件: 1.配置IP [[email prote

初学php html javascript后小总结

php基本的语法网上看一些别人写的网站就会了) php下的执行sql语句: 1.建立数据库连接: $conn = mysql_connect("localhost", "root", "admin") or die("Could not connect " ); Localhost:本地主机名,root:mysql数据库账号   admin:mysql数据库密码 mysql_select_db("test"

Linux批量管理服务器小工具--PSSH

Linux批量管理服务器小工具--PSSH 一.简介 pssh -- parallel ssh program pssh  is  a program for executing ssh in parallel on a number of hosts.  It provides features such as sending input to all of the processes, passing a password to ssh, saving output to files, an

Js模型和封装(没毕业的孩子,一点拙劣的小分享,欢迎批评和补充)

一点拙劣的小分享,欢迎批评和补充 我们经常在Js中为我们的各类组件,构造Json格式的假数据.我们看如下代码: var jsonResult = [ { 'name': 'ws', 'age': '22' }, { 'name': 'td', 'age': '22' } //我们把jsonResult[x]当作对象,其中的自然为属性 ]; window.onload = function () { alert(jsonResult[0].name); } 那么对象的方法如下: var jsonR