คำถามติดแท็ก bash

Bash เป็นเชลล์ฟรีสำหรับระบบปฏิบัติการยูนิกซ์จากโครงการ GNU


1
การติดตั้ง sshpass
ฉันต้องการใช้ SSH ไร้รหัสผ่านสำหรับการเข้าสู่ระบบฉันใช้ sshpass เพื่อให้บรรลุนี้ ปัญหาคือเมื่อฉันพยายามติดตั้ง sshpass ตลอด sudo apt-get install sshpass. มันขอรหัสผ่าน หลังจากฉันป้อนรหัสผ่านข้อความต่อไปนี้จะปรากฏขึ้น: Santosh_Nayak05 is not in the sudoers file. This incident will be reported. ฉันอยากจะใช้อย่างยิ่ง sshpass. ฉันใหม่สำหรับ Unix มีร่างกายคนใดเล่าให้ฉันฟังได้ไหม sudoers ไฟล์และฉันจะติดตั้งและใช้งานได้อย่างไร sshpass?
2 bash  ssh  unix  sudoers 

4
แป้นพิมพ์ลัดใน Bash shell [ปิด]
ฉันรู้ว่ามีทางลัดเปลือก Bash ที่มีประโยชน์และฉันสงสัยว่ามีคนอื่น ๆ สิ่งที่ฉันรู้: CTRL + W: ลบจนกว่าจะเริ่มต้นของคำ CTRL + U: ลบจนกว่าจะถึงจุดเริ่มต้นของบรรทัด ขึ้น / ลง: นำทางระหว่างคำสั่งก่อนหน้า สิ่งที่ฉันอยากรู้เป็นพิเศษคือ: การลบจนกระทั่งสัญลักษณ์ "/" แรกหรือจนกว่าจุด CTRL + ซ้ายจะกลับไป กำลังค้นหาในโพสต์ก่อนหน้า และทางลัดอื่น ๆ ที่เป็นประโยชน์หากมี

1
ypchsh ไม่เปลี่ยนเป็นเชลล์บางตัว
ฉันกำลังทุบตีอยู่ในขณะนี้ แต่ฉันต้องการเปลี่ยนเชลล์เป็น tcsh ฉันใช้ ypchsh ป้อนรหัสผ่านเมื่อได้รับแจ้งจากนั้นเปลี่ยนเชลล์ล็อกอินเป็น / bin / tcsh และดูเหมือนว่าใช้งานได้เพราะฉันได้รับข้อความแจ้งว่า "เชลล์ล็อกอินมีการเปลี่ยนแปลงใน [domain]" จากนั้นฉันออกจากระบบและลงชื่อเข้าใช้อีกครั้งฉันทำ echo $ 0 เพื่อตรวจสอบเชลล์ปัจจุบันของฉัน อย่างไรก็ตามเมื่อฉันทำเสียงสะท้อน $ SHELL ฉันจะได้รับ / bin / tcsh และเมื่อฉันทำ ps ก็แสดงให้เห็นว่าทุบตีทำงานแทน tcsh ขั้นตอนการแก้ปัญหาอื่น ๆ ที่ถ่าย: พยายามทำขั้นตอนเดียวกันเพื่อสลับไปยังกระสุนที่แตกต่างกันเช่น sh และ ksh ที่ใช้งานได้ อย่างไรก็ตามการเปลี่ยนเป็น csh ให้ผลลัพธ์แบบเดียวกับที่ฉันพยายามเปลี่ยนเป็น tcsh ตรวจสอบ / etc / shells และ tcsh อยู่ในรายการ …
2 bash  shell  tcsh 

1
การเพิ่มแถวที่กำหนดเองลงในไฟล์โดยใช้เชลล์สคริปต์
ฉันมีไฟล์ข้อความที่มีจำนวนแถวโดยพลการสามเท่าดังนี้: 4 5 2 12 16 6 ตอนนี้ฉันต้องการเพิ่มแถวที่เกี่ยวข้องลงในไฟล์ สมมติว่าฉันต้องการเพิ่ม 4 แถวต่อแถวซึ่งมีค่าเหมือนกัน คอลัมน์สองคอลัมน์แรกมีการเปลี่ยนแปลงเล็กน้อย (-1 และ +1 สำหรับหนึ่งในนั้นทั้งหมดทั้งสี่ชุด) และสำหรับคอลัมน์ที่สามค่าจะลดลงครึ่งหนึ่ง: 4 5 2 (original row) 3 5 1 (added rows) 5 5 1 4 4 1 4 6 1 12 16 6 (original row) 11 16 3 (added rows) 13 16 3 12 …

1
wget โดยไม่ต้องเก็บแคช
ฉันพยายามเรียกใช้สคริปต์ทุบตีระยะไกลที่โฮสต์บน Github: wget -O - https://raw.githubusercontent.com/xxxxx/script.sh ทุกอย่างใช้งานได้ดีไม่มีปัญหา แต่เมื่อฉันอัปเดตสคริปต์ด้านบนและฉันเรียกใช้คำสั่งเดียวกันมันจะประมวลผลสคริปต์เก่า ฉันลองด้วย --no-cache, --delete-after, ปราศจากความสำเร็จ ทำอย่างไรจึงจะได้สำเนาสดใหม่ทุกครั้ง?

1
ทุบตีรายการแท็บเสร็จด้านล่างแจ้งให้
เมื่อใดก็ตามที่ฉันใช้การกรอกข้อมูลในแท็บรายการความเป็นไปได้จะปรากฏขึ้นและข้อความแจ้งให้ทำซ้ำด้านล่าง | ระบุตำแหน่งเคอร์เซอร์สุดท้าย): $ vim ~/.<TAB> ./ ../ .bashrc .vimrc $ vim ~/.| ฉันต้องการสิ่งต่อไปนี้พฤติกรรมที่เหมือนกับ zsh: $ vim ~/.<TAB>| ./ ../ .bashrc .vimrc นั่นคือแสดงคำแนะนำ ใต้พรอมต์เก่า . คำแนะนำเก่าควรถูกเขียนทับหรือหายไปเมื่อฉันทำเสร็จแล้วแทนที่จะทำให้หน้าจอรก เป็นไปได้ไหม ถ้าเป็นเช่นนั้นได้อย่างไร

2
จะควบคุมกลับในกระบวนการแยกต่างหากใน Linux shell ได้อย่างไร?
ฉันเพิ่งตั้งเซิร์ฟเวอร์ Minecraft บน VPS สำหรับน้องชายของฉันแล้วฉันก็วิ่งไปพร้อมกับสคริปต์ทุบตี: sh ./server.sh& ด้วยวิธีนี้เซิร์ฟเวอร์กำลังทำงานและฉันยังคงสามารถทำงานบนบรรทัดคำสั่งเดียวกันกับผงสำหรับอุดรู แต่ถ้าฉันต้องการป้อนคำสั่งไปยังเซิร์ฟเวอร์ Minecraft ฉันจะกลับมาที่หน้าจอคอนโซลได้อย่างไร: [10:17:23] [Server thread/INFO]: Starting minecraft server version 1.7.10 [10:17:23] [Server thread/INFO]: Loading properties [10:17:23] [Server thread/INFO]: Default game type: SURVIVAL [10:17:23] [Server thread/INFO]: Generating keypair [10:17:24] [Server thread/INFO]: Starting Minecraft server on *:25565 [10:17:24] [Server thread/INFO]: Preparing level "world" …
2 linux  bash  debian  shell 

1
Bash - ไฟล์รายการภายในช่วงวันที่
จนถึงตอนนี้ฉันได้พยายามอย่างหนักแล้ว บล็อกนี้ และเกิดขึ้นกับ: startdate=”201407010000? enddate=”201408010000? touch -t $startdate ./startdatefiles touch -t $enddate ./enddatefiles find ./ -type f -newer ./startdatefiles ! -newer ./enddatefiles -ls ฉันได้รับข้อผิดพลาดต่อไปนี้: touch: invalid date format `201408010000?' มีใครรู้วิธีตรงไปตรงมาในการทำเช่นนี้?
2 bash  shell  ls  sh 

1
ข้อผิดพลาดของสคริปต์ทุบตี
ฉันพยายามทำให้ MP3 ทั้งหมดของฉันมีการลงทะเบียน BPM ฉันหาซอฟต์แวร์สำหรับสิ่งนั้นผ่านคำถามผู้ใช้ขั้นสูงนี้ ผมติดตั้งbpmdj , vorbis-tools flac python-mutagenและคัดลอกสคริปต์ทุบตีจากคำถามของผู้ใช้ชื่อเปอร์ (ดูด้านล่าง) ตอนนี้ปัญหาคือสคริปต์นี้ให้ฉันสองข้อผิดพลาด: /home/jeroen/bpmtagging.sh: line 67: warning: here-document at line 4 delimited by end-of-file (wantedช่วยเหลือ ') ` /home/jeroen/bpmtagging.sh: line 68: syntax error: unexpected end of file นี่เป็นสองบรรทัดสุดท้ายของสคริปต์ ฉันคิดว่าสคริปต์ใช้งานได้กับ OP แต่ตอนนี้ไม่สามารถใช้งานบน Ubuntu 12.04 ได้อีกต่อไป ฉันยังใหม่กับการทุบตีสคริปต์และฉันพยายามค้นหาข้อผิดพลาด แต่ไม่มีประโยชน์ ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม #!/bin/bash function display_help() …

2
xargs touch ตามด้วยคำสั่งที่สอง
ฉันสุ่มเลือกไฟล์จากไดเรกทอรีที่ฉันต้องการประมวลผลและฉันต้องการใช้คำสั่งสัมผัสกับพวกเขาเพื่อที่ฉันจะได้รู้ว่าไฟล์สุดท้ายที่ถูกสร้างภาพจากนั้นใช้โปรแกรมสร้างภาพ บางสิ่งเช่นนี้ while [ 1 ]; do ls | shuf | xargs "touch & vizprogram"; done เนื่องจากฉันตรวจสอบชุดข้อมูลเหล่านี้ด้วยตนเองฉันต้องการ "Esc" จากลูป ณ จุดใดก็ได้เพื่อที่ฉันจะขัดจังหวะ vizprogram และวนซ้ำอีกครั้ง จากนั้นเมื่อฉันพบไฟล์ที่ฉันต้องการติดตามฉันต้องการ Ctrl + C และทำls -rt | tail -n 1เพื่อให้มีชื่อของไฟล์ล่าสุดที่ฉันใช้ ฉันลองสิ่งนี้ด้วยการวนรอบหรือขณะแทนแทนที่จะทำxargsแต่ฉันไม่สามารถทำ "Esc" บนวนรอบหลักได้ ความคิดใด ๆ ที่จะทำ "สัมผัสแล้ว vizprogram" ภายใน xargs?
2 bash  xargs 

2
LinuxBash ไม่เปิดในโฟลเดอร์ปัจจุบัน
Bash on Ubuntu on Windowsนานมาแล้วที่ผมตั้งขึ้น ตอนนี้ใช้ Win10 เมื่อฉันอยู่ใน Explorer และคลิกขวาในช่องว่างที่ฉันสามารถเลือก Open LinuxBash Window from hereได้ แต่ bash จะเปิดที่ตำแหน่งเริ่มต้นอื่นเสมอ ฉันจะทำอย่างไรเพื่อกำหนดเส้นทางของ bash ที่ตำแหน่งที่ฉันเปิดโดยอัตโนมัติ เปิด Bash ที่นี่: แต่ Bash อยู่ที่ "~": แก้ไข: ฉันสังเกตเห็นเมื่อฉันพิมพ์explorer.exe .มันจะกลับไปที่โฟลเดอร์ด้านขวา แต่เมื่อฉันตรวจสอบความเป็นไปได้หลังจากที่cdมันแสดงโฟลเดอร์ที่แตกต่างอย่างสิ้นเชิง

1
Reloads หน้าจอเข้าสู่ระบบ Ubuntu
ฉันพยายามลงชื่อเข้าใช้เดสก์ท็อป Ubuntu หลังจากอัปเดตแพ็คเกจจำนวนมากและรีบูตเครื่อง ฉันรู้ว่าฉันรับรองความถูกต้องเรียบร้อยแล้ว แต่สิ่งที่น่าจะเกิดขึ้นคือหลังจากฉันป้อนชื่อผู้ใช้และรหัสผ่านของฉันแล้วหน้าจอจะเปลี่ยนเป็นสีดำทั้งหมดชั่วคราวจากนั้นหน้าเข้าสู่ระบบจะถูกโหลดอีกครั้ง ฉันไม่แน่ใจว่าจะหาข้อผิดพลาดที่เกี่ยวข้องกับเรื่องนี้ได้ที่ไหน ข้อเสนอแนะใด ๆ ที่จะได้รับการชื่นชม อัพเดท: ถ้าฉันเลือกfailsafe GNOMEจากรายการเซสชันฉันสามารถเข้าสู่ระบบได้ดี ความคิดใด ๆ ปรับปรุง 2: นี่คือผลลัพธ์จาก~/.xsession-errors: /etc/gdm/Xsession: Beginning session setup... /etc/profile.d/p4c.sh: 8: Syntax error: "(" unexpected p4c.shเป็นสคริปต์ที่ฉันคัดลอกมาจากระบบ Ubuntu ก่อนหน้าของฉันซึ่งทำงานได้ดี นี่คือเนื้อหาของ p4c.sh: #!/bin/bash # p4c() function setup params p4_HOST=`hostname | awk -F . '{print $1}'` # function for setting the …

1
บัญชีผู้ใช้ภายใต้ WSL (ระบบย่อย Windows สำหรับ Linux)
ฉันสังเกตเห็นขณะเรียกดูบล็อก Windows สำหรับข้อมูลเกี่ยวกับการเปิดตัว Insider Preview ล่าสุด (Build No. 14316) ว่าการbashติดตั้งเมื่อใดจะทำให้คุณได้รับพรอมต์รูตตามค่าเริ่มต้น แม้จะมีปัญหาด้านความปลอดภัยเช่นrm -rf C:/(WSL สนับสนุนการเข้าถึงระบบแฟ้ม Windows), สามารถsudoพฤติกรรมของฐาน Ubuntu 14.04 LTS ไม่ถูกจำลองแบบโดยค่าเริ่มต้นในขณะที่bashช่วยให้คุณพร้อมท์ระดับผู้ใช้ในการเริ่มต้นและคุณสามารถแล้วsudoที่จะrootเป็นและเมื่อคุณต้องการมัน ? ทำrootแผนที่กับผู้ดูแลระบบหรือ? นอกจากนี้พฤติกรรมที่คาดหวังของchmodและchownภายใต้สถานการณ์เหล่านี้คืออะไร? ผู้ใช้และกลุ่ม Windows ได้รับผลกระทบโดยตรงกับฐาน Ubuntu ผ่าน WSL หรือมีบางสิ่งในระหว่างนั้นหรือไม่?

1
สถิติเกี่ยวกับการสร้างไฟล์ใน OSX
เมื่อใดก็ตามที่ฉันสร้าง (หรือแม้กระทั่งอัปเดตดูเหมือนว่า) ไฟล์ใน OSX ฉันจะได้รับกล่องโต้ตอบต่อไปนี้: ➜ hello touch test.txt test.txt Stats { dev: 16777220, mode: 33188, nlink: 1, uid: 501, gid: 20, rdev: 0, blksize: 4096, ino: 252423193, size: 0, blocks: 0, atimeMs: 1502219299000, mtimeMs: 1502219299000, ctimeMs: 1502219299000, birthtimeMs: 1502219299000, atime: 2017-08-08T19:08:19.000Z, mtime: 2017-08-08T19:08:19.000Z, ctime: 2017-08-08T19:08:19.000Z, birthtime: 2017-08-08T19:08:19.000Z } โดยทั่วไปฉันใช้ohmyzshแต่ฉันได้ลองใช้เปลือกวานิลลาของฉันและทำสิ่งเดียวกัน …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.