Chinaunix

标题: 怎么获取计算机名称 [打印本页]

作者: ckf513728912    时间: 2014-04-07 16:33
标题: 怎么获取计算机名称
本帖最后由 ckf513728912 于 2014-04-07 16:48 编辑

小想建立一个文件夹但是不知道怎么获取当时系统用户的名称,比如
/home/suse/ftp
/home/ubuntu/ftp
/home/redhat/ftp

红色字体怎么获取?要想mkdir -p /home/(红色字体部分)/ftp, 建立ftp这个文件夹.谢谢指导

作者: yestreenstars    时间: 2014-04-07 16:51
CentOS可以这样:
  1. [root@localhost ~]# awk 'NR==1{print $1}' /etc/issue
  2. CentOS
复制代码

作者: jason680    时间: 2014-04-07 16:51
本帖最后由 jason680 于 2014-04-07 16:52 编辑

回复 1# ckf513728912

$ awk '{N=length($1)<=3?$1$2:$1;print tolower(N);exit}' /etc/issue
redhat

$ awk '{N=length($1)<=3?$1$2:$1;print tolower(N);exit}' /etc/issue
ubuntu
作者: action08    时间: 2014-04-07 17:23
shell@mh3:~$ awk '{N=length($1)<=3?$1$21;print tolower(N);exit}' /etc/issue
ubuntu
shell@mh3:~$


作者: LikeLx    时间: 2014-04-08 08:46
  1. 是系统名?还是系统当前用户名?
复制代码

作者: hhdzhu    时间: 2014-04-08 09:10
回复 3# jason680


    您好,aix没有issue这个文件啊
作者: hhdzhu    时间: 2014-04-08 09:34
回复 2# yestreenstars


    请教!我想试下我的想法:mkdir 'system("uname")' 我以为会产生一个名为aix的目录,结果却是system("uname")这个目录。请问我用system函数的思路对不?mkdir后面的名字还可以加''这个号吗?
作者: Shell_HAT    时间: 2014-04-08 09:42
回复 6# hhdzhu
  1. PLATFORM=`/bin/uname`
  2. case $PLATFORM in
  3.   HP-UX)
  4.     OS=HP-UX ;;
  5.   AIX)
  6.     OS=AIX ;;
  7.   SunOS)
  8.     OS=SunOS ;;
  9.   Linux)
  10.     OS=`awk 'NR==1{s=length($1)<=3?$1$2:$1;print s}' /etc/issue` ;;
  11.   *)
  12.     OS=UNKWON ;;
  13. esac
  14. echo $OS
复制代码

作者: Shell_HAT    时间: 2014-04-08 09:43
回复 7# hhdzhu
  1. mkdir `uname`
复制代码

作者: hhdzhu    时间: 2014-04-08 09:53
回复 8# Shell_HAT


    谢了,就是有时候命令要用system引起来,有时候又不用,不知道为什么。。。
作者: Shell_HAT    时间: 2014-04-08 10:39
回复 10# hhdzhu


    在awk里面需要调用系统里面的时候需要用到system
作者: q1208c    时间: 2014-04-08 11:38
不能 使用 '/etc/issus' 这个文件来处理的. 因为这个文件只是为了在login的时候展示用的, 有些管理员会修改其中的内容的.

正确的做法是使用 '/etc/*release' 这(些)个文件. 不管哪个OS, 这(些)个文件一定存在, 且内容不能修改. 因为很多系统命令依赖此文件的内容来判断OS的版本.

RH 系的OS 中 rpmbuild 里的macro 就是使用这个文件的.
作者: ckf513728912    时间: 2014-04-18 10:22
回复 5# LikeLx


    用户名, 系统名是可以在/etc/issuse下, 用户名不知道怎么获取
作者: LikeLx    时间: 2014-04-18 10:29
回复 13# ckf513728912

你想获取现在登录的用户名?还是别的?
   
作者: Shell_HAT    时间: 2014-04-18 11:27
回复 13# ckf513728912
  1. echo $USER
复制代码

作者: ckf513728912    时间: 2014-04-18 16:40
回复 15# Shell_HAT


    谢谢您, shell里还有很多默认的变量都不熟悉,得多多加强啊。谢谢指导




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2