Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 30.03.2019
Сообщений: 7
1

Создать нового пользователя, в его каталоге создать директорию и в ней текстовый файл

01.04.2020, 22:51. Просмотров 788. Ответов 5

Здравствуйте! Пытаюсь сделать задание для универа. Написать скрипт, который бы создавал нового пользователя, в его каталоге создал бы директорию в которой текстовый файл с определенным текстом. Скрипт написал, но он только создает нового пользователя и на этом все. Хотя если писать эти команды руками в терминале то все работает. Буду благодарен за любую информацию.p.s я в linux`е - чайник. Скрипт:

Bash
1
2
3
4
5
6
7
#! bin/bash
sudo adduser newuser
su newuser
cd
mkdir new
cd /home/newuser/new
echo sometext > txt
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.04.2020, 22:51
Ответы с готовыми решениями:

На диске C создать директорию с именем в виде текущей даты в формате ДД-ММ-ГГГГ, а в ней — текстовый файл
Помогите создать командный файл! 1.Создать в текущем каталоге пользователя командный файл с именем...

CB10 узнать системную директорию и создать в ней файл
Доброго времени! Вопрос собственно в заголовке. В CB6 проблем с этим не было, а здесь не...

Создать директорию, в ней - файл, записать в него строку, переписать вторую половину строки в другой файл.
Надо выполнить задание, создать директорию, в ней создать файл записать в него строку, потом...

Создать нового пользователя и ввести его в дополнительную группу
Нужно создать пользователя user1 чтобы: пользователю user1 назначаются все свойства системы по...

5
Модератор
Эксперт NIX
2775 / 2025 / 678
Регистрация: 02.03.2015
Сообщений: 6,498
01.04.2020, 23:40 2
Цитата Сообщение от Денис_Денис Посмотреть сообщение
Хотя если писать эти команды руками в терминале
  1. Команды с sudo - интерактивные, т.е. запрашивают взаимодействие с пользователем (такого как например ввод пароля). Поэтому его надо не в скрипт вставлять, а сам скрипт выполнять с админскими привелегиями.
  2. Постарайтесь обойтись без cd. Достаточно использовать полные пути.
0
Эксперт PHP
932 / 690 / 235
Регистрация: 01.02.2015
Сообщений: 1,848
01.04.2020, 23:41 3
sudo adduser newuser
когда создается новый пользователь это не значит что у него должна создатся папка
далее вообще не понятно зачем так делаете
su newuser, но пароль пользователю вы не назначали
cd куда без указании пути
0
0 / 0 / 0
Регистрация: 30.03.2019
Сообщений: 7
02.04.2020, 00:15  [ТС] 4
В моем случае при создании пользователя у него создается папка. cd без указания пути переносит просто в каталог home. там какая то путаница с местонахождением происходит при выполнении скрипта. возможно у Вас есть вариант рабочего скрипта? буду весьма признателен
0
Эксперт PHP
932 / 690 / 235
Регистрация: 01.02.2015
Сообщений: 1,848
02.04.2020, 03:34 5
Bash
1
2
3
4
5
useradd newuser  -d /home/newuser
mkdir -p /home/newuser/new
echo sometext > /home/newuser/new/text.txt
chown  -R newuser /home/newuser/new/*
chgrp -R newuser /home/newuser/new/*
0
Эксперт по компьютерным сетямЭксперт NIX
12135 / 7017 / 709
Регистрация: 09.09.2009
Сообщений: 27,515
02.04.2020, 09:02 6
две команды
Цитата Сообщение от Fedor Vlasenko Посмотреть сообщение
chown -R newuser /home/newuser/new/*
chgrp -R newuser /home/newuser/new/*
...можно заменить одной:
Код
chown -R newuser:newuser /home/newuser/new/*
или
Код
chown -R newuser: /home/newuser/new/*
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2020, 09:02

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Создать текстовый файл «Dir.Txt», содержащий перечень файлов в текущем каталоге
Дополнительная информация, записываемая в файл «Dir.Txt» - средний размер файла в текущем каталоге....

Создать папку User6 в корневом каталоге диска D и вывести в текстовый файл содержимое папки C:\Windows
С помощью бат-файла создать папку User6 в корневом каталоге диска D и вывести в текстовый файл...

Исполняющий файл .bat должен создать каталог, в этом каталоге создать файл
Помогите пожалуйста!!! создать файл расширение .bat Исполняющий файл .bat должен создать...

При попытке создать директорию ошибка: Невозможно создать файл т.к. он уже существует
Здравствуйте. Использую такой вот код: int WriteLog( ) { ofstream myfile; LPCTSTR path...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.