Golang 在linux中新建用户
今天有一个需求是使用程序在Linux新建用户账户和家目录。找了好久,只找到和golang如何使用cmd相关的,那么就可以试试了。
最终在centos7上成功了。
func AddLinuxUser(username, password string) {//这里新建用户,并新建家目录useradd := exec.Command("useradd", "-m", username)err := useradd.Start()if err != nil {fmt.Println(err.Error())}useradd.Wait()//下面两个是管道的两端//linux可以使用 echo "password" | passwd --stdin username//直接更改密码ps := exec.Command("echo", password)grep := exec.Command("passwd", "--stdin", username)r, w := io.Pipe() // 创建一个管道defer r.Close()defer w.Close()ps.Stdout = w // ps向管道的一端写grep.Stdin = r // grep从管道的一端读var buffer bytes.Buffergrep.Stdout = &buffer // grep的输出为buffer_ = ps.Start()_ = grep.Start()ps.Wait()w.Close()grep.Wait()io.Copy(os.Stdout, &buffer) // buffer拷贝到系统标准输出}
Golang 在linux中新建用户相关推荐
- Linux中新建用户用不了sudo命令问题:rootr is not in the sudoers file.This incident will be reported解决
Linux中新建用户用不了sudo命令问题:rootr is not in the sudoers file.This incident will be reported解决 参考:https://b ...
- linux中的用户、群组和权限
linux中的用户.群组和权限 linux中的用户.群组和权限 新建用户natasha,uid为1000,gid为555,备注信息为"master" groupadd -g 55 ...
- Linux中的用户与权限
1.Linux中的用户 Linux作为一种多用户的操作系统(服务器系统),允许多个用户同时登陆到系统上,并响应每个用户的请求. 任何需要使用操作系统的用户,都需要一个系统账号,账号分为:管理员账号与普 ...
- Linux中修改用户UID和组GID的方法
Linux中修改用户UID和组GID的方法 http://www.sijitao.net/2401.html 发表时间:2016-04-20 21:30 | 分类: Linux | 浏览:2,344 ...
- linux查看用户bashrc,Linux中.bashrc用户环境文件详解
Linux中.bashrc用户环境文件影响用户使用bash,于是笔者来分析一下文件中重要的部分.看看文件中关于文件作用的说明: ~/.bashrc: executed by bash(1) for n ...
- linux用户空间 限制吗,在Linux中限制用户空间
在Linux中限制用户的磁盘使用空间使用的是Quota,一般Quota在安装Linux时就已包括在内核中,不需要另行安装.Quota可以从两方面指定磁盘的储存限制: 使用者所能够支配的索引节点(ino ...
- 虚拟机Linux中判断用户输入的是 Yes 或 NO
Linux中判断用户输入的是 Yes 或 NO #!/bin/bash # 判断用户输入的是 Yes 或 NO read -p "Are you sure?[y/n]:" sure ...
- Linux中的用户及文件权限管理总结
一.用户 1.查看用户:who am I 2.创建用户:sudo adduser <用户名> 在linux中,root权限拥有至高无上的权利,一般登录系统时都是以普通账户的身份登录的,要创 ...
- Linux中的用户和组
Linux操作系统是多用户操作系统,它允许多个用户同时登录到系统中,使用系统资源,为了使所有用户的工作都能顺利进行,保护每个用户的文件和进程,也为了系统自身的安全和稳定,必须建立起一种机制,使每个用户 ...
最新文章
- form中的onblur事件简单的介绍
- AWS — AWS 上的 5G 网络切片
- 嵌入式linux中的锁机制,跟涛哥一起学嵌入式第11集:一个实现锁机制非常有意思的宏...
- 使用auditctl追踪文件变化
- 面向对象 —— 类的分类
- Android 导入导出excel xls、xlsx
- 爬取网易云音乐的歌曲
- 分享3个超棒的免费wordpress主题: Splus, EMagazine和BAGONG
- 苹果上网本报价_比iPhone还便宜,这是你能买到最香的苹果笔记本!?
- 易地图google版,可精确经纬度查询定位
- 祝萍:后疫情时代,医美运营既要走心也要反套路
- 转载:SyncToy安装使用详解
- 【工程记录】基于松灵Scout mini底盘实现小车自主探索建图
- 【计算机毕业设计】528口腔管家平台
- 【WebServerProgramming】Ch.1 网络因特网Web
- 01【股票初级】-【找准入场时机】投资五大流派,好公司投资法,判断单只股票是否便宜?如何找准时机入场?
- TCP选项之SACK选项概述
- c语言求矩阵各行元素之和
- 2022眼视光展,护眼产品展,眼睛健康展,视力康复展
- 【信号采集】基于FPGA的高速信号采集系统
热门文章
- 人脸检测的测试程序(视频和摄像头)
- _getch() 和 getch() 及 _T()
- Python:后缀为whl的文件是什么?如何安装whl文件?
- 细讲如何判断文法是否是LL(1)文法
- Texmaker+Miktex配置
- 解决前端警告: Warning: Failed prop type: Invalid prop value of type number supplied to Textinput
- 临近年关,为何越来越多的程序员不愿回家,带你盘点那些程序员最怕的几件事
- banner设圆角_illustrator大气、科技感的Banner设计教程
- 可视化搭建平台的参考网格线设计
- PHP中的opcode