aemv - ออนไลน์ในคลาวด์

นี่คือคำสั่ง aemv ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


aegis move file - เปลี่ยนชื่อไฟล์ตั้งแต่หนึ่งไฟล์ขึ้นไปเป็นส่วนหนึ่งของการเปลี่ยนแปลง

เรื่องย่อ


โล่ -MoVe_file [ ตัวเลือก- ชื่อเก่า ชื่อใหม่ [ old1 new1 [ old2 new2 ] ]
โล่ -MoVe_file -รายการ [ ตัวเลือก-
โล่ -MoVe_file -ช่วย

DESCRIPTION


พื้นที่ โล่ -MoVe_file คำสั่งใช้สำหรับคัดลอกไฟล์ลงในการเปลี่ยนแปลงและเปลี่ยนชื่อที่
ในเวลาเดียวกัน

ไฟล์ที่มีชื่อจะถูกคัดลอกมาจากพื้นฐาน (ไฟล์เก่า) สู่การพัฒนา
ไดเรกทอรี (ไฟล์ใหม่) และเพิ่มไปยังรายการไฟล์ในการเปลี่ยนแปลง

คำเตือน: หากมีไฟล์อยู่ในไดเร็กทอรีการพัฒนาของตัวใดตัวหนึ่งอยู่แล้ว ชื่อเก่า or
ชื่อใหม่ พวกเขาจะถูกเขียนทับ

พื้นที่ ไฟล์เก่า ในไดเร็กทอรีการพัฒนาจะมีข้อความสุ่ม 1KB สุ่ม
ข้อความน่ารังเกียจเพียงพอที่คอมไพเลอร์ส่วนใหญ่จะให้ข้อความแสดงข้อผิดพลาด
ไฟล์ถูกอ้างอิงโดยบังเอิญ ซึ่งมักจะมีประโยชน์มากเมื่อย้ายรวมไฟล์

คุณสามารถเปลี่ยนชื่อไดเร็กทอรี ไฟล์ทั้งหมดใน ชื่อเก่า แผนผังไดเร็กทอรีจะถูกเปลี่ยนชื่อ
ให้อยู่ต่ำกว่า ชื่อใหม่ แผนผังไดเร็กทอรี

เนื้อไม่มีมัน Name การตีความ
โปรแกรม aegis จะพยายามกำหนดชื่อไฟล์โครงการจากชื่อไฟล์
ระบุไว้ในบรรทัดคำสั่ง ชื่อไฟล์ทั้งหมดจะถูกเก็บไว้ในโครงการ aegis เป็นญาติ
ไปที่รูทของแผนผังไดเร็กทอรีพื้นฐาน ไดเร็กทอรีการพัฒนาและ
ไดเร็กทอรีการรวมเป็นเงาของไดเร็กทอรีพื้นฐานนี้ ดังนั้นชื่อที่สัมพันธ์กันเหล่านี้
สมัครได้ที่นี่เช่นกัน ไฟล์ที่ชื่อบนบรรทัดคำสั่งจะถูกแปลงเป็นพาธสัมบูรณ์ก่อน
ในกรณีที่จำเป็น. จากนั้นนำไปเปรียบเทียบกับเส้นทางพื้นฐาน ไดเร็กทอรีการพัฒนา
พาธ และพาธไดเร็กทอรีการรวม เพื่อกำหนดชื่อที่สัมพันธ์กันพื้นฐาน มันคือ
เกิดข้อผิดพลาดหากไฟล์ที่ชื่ออยู่นอกแผนผังไดเร็กทอรีเหล่านี้

พื้นที่ -BAse_Relative อาจใช้ตัวเลือกเพื่อทำให้ชื่อไฟล์สัมพัทธ์ถูกตีความว่าเป็น
สัมพันธ์กับเส้นทางพื้นฐาน ชื่อไฟล์สัมบูรณ์จะยังคงถูกเปรียบเทียบกับชื่อต่างๆ
เส้นทางเพื่อกำหนดชื่อพื้นฐานที่สัมพันธ์กัน

พื้นที่ ญาติ_filename_preference ในไฟล์กำหนดค่าผู้ใช้อาจใช้เพื่อแก้ไข
ลักษณะการทำงานเริ่มต้นนี้ ดู อย(5) สำหรับข้อมูลเพิ่มเติม

กระบวนการ ด้าน ผลกระทบ
คำสั่งนี้จะยกเลิกการลงทะเบียนบิลด์หรือทดสอบ เนื่องจากเพิ่มไฟล์อื่น
ทำให้เป็นโมฆะอย่างมีเหตุผล

เมื่อมีการแสดงไฟล์การเปลี่ยนแปลง (โล่ -รายการ Change_Files -สั้น) ไฟล์ใหม่ (ใหม่-
ชื่อ) จะปรากฏในรายการ และไฟล์ที่ถูกลบ (ชื่อเก่า) จะ ไม่ ปรากฏใน
รายการสั้น ๆ ในทำนองเดียวกัน เมื่อไฟล์โครงการแสดงการเปลี่ยนแปลงอย่างชัดเจน
หมายเลข (โล่ -รายการ โครงการ_ไฟล์ -สั้น - เปลี่ยน N) ไม่มีไฟล์การเปลี่ยนแปลงใดๆ รวมถึง
ทั้งไฟล์ใหม่และไฟล์ที่ถูกลบจะปรากฏในรายการสั้น ๆ คุณสมบัติทั้งสองนี้คือ
มีประโยชน์มากเมื่อเรียก aegis จากภายใน DMT เพื่อสร้างรายการไฟล์ต้นฉบับ

การประกาศ
พื้นที่ new_file_command และ คำสั่ง remove_file_ ในโครงการ การตั้งค่า ไฟล์ถูกเรียกใช้หากตั้งค่าไว้
พื้นที่ โครงการ_file_คำสั่ง ทำงานด้วย หากตั้งค่าไว้ และหากมีการรวมเข้าด้วยกัน
เร็ว ๆ นี้. ดู เอปคอนเฟอเรนซ์(5) สำหรับข้อมูลเพิ่มเติม

ขาว


Aegis ให้สิ่งที่เรียกว่า “เส้นทางการดู” แก่คุณซึ่งบ่งบอกถึงการพัฒนา
เครื่องมือ (คอมไพเลอร์, สร้างระบบ, ฯลฯ) ดูก่อนในไดเร็กทอรีการพัฒนา จากนั้นใน
พื้นฐานสาขา และอื่นๆ จนถึงบรรทัดฐานของลำต้น

ปัญหาเกี่ยวกับเส้นทางการดูคือเพื่อลบไฟล์ คุณต้องมี
"whiteout" เพื่อบอกว่า "หยุดมอง มันถูกลบไปแล้ว"

เมื่อคุณใช้ แอม(1) หรือ เอมวี(1) คำสั่ง หมายถึง "เพิ่มข้อมูลในการเปลี่ยนแปลงนี้
ซึ่งจะลบไฟล์ออกจากพื้นฐานเมื่อการเปลี่ยนแปลงนี้รวมเข้าด้วยกัน" กล่าวคือ ในขณะที่
การเปลี่ยนแปลงอยู่ใน กำลัง พัฒนา สถานะ ไฟล์จะถูก "ลบ" เท่านั้นในการพัฒนา
ไดเร็กทอรี - ยังคงอยู่ในบรรทัดฐาน และจะคงอยู่จนกว่าการเปลี่ยนแปลงจะเป็น
บูรณาการได้สำเร็จ

เมื่อคุณใช้ แอม(1) หรือ เอมวี(1) คำสั่ง Aegis จะสร้างไฟล์ 1K เพื่อทำหน้าที่เป็น
ไวท์เอาท์ เนื้อหาค่อนข้างน่าเกลียดดังนั้นหากคุณรวบรวมหรือรวม "ลบ"
ไฟล์โดยไม่ตั้งใจ คุณได้รับข้อผิดพลาดร้ายแรง สิ่งนี้จะเตือนให้คุณลบล้าสมัย
การอ้างอิง

เมื่อรวมการเปลี่ยนแปลง ไฟล์ที่ถูกลบคือ ไม่ คัดลอก/เชื่อมโยงจากพื้นฐานไปยัง
ไดเร็กทอรีการรวมและ is ไม่ คัดลอกมาจากไดเร็กทอรีการพัฒนา ที่นี่
เวลาที่มันหายไปทางกายภาพ (ไม่มี whiteout) สันนิษฐานว่าเพราะความผิดพลาด
ทำให้เกิด whiteout การอ้างอิงเก่าทั้งหมดถูกพบและแก้ไขในขณะที่การเปลี่ยนแปลงอยู่ใน
กำลัง พัฒนา รัฐ

เนื้อไม่มีมัน แสดงออก
เมื่อสร้างรายการไฟล์ที่จะรวบรวมหรือเชื่อมโยง สิ่งสำคัญคือไฟล์
รายการถูกสร้างขึ้นจากข้อมูลที่รู้จักโดย Aegis มากกว่าจากระบบไฟล์
ด้วยเหตุผลหลายประการ:

(a) Aegis รู้ดีว่าไฟล์ (ต้นทาง) คืออะไรในขณะที่ทุกอย่างอื่น
อนุมานความรู้ของเอจิส; และ

(b) การดูในระบบไฟล์ทำได้ยากเมื่อเส้นทางการดูยาวกว่า 2 ไดเร็กทอรี
(และวิธีการแตกแขนงของ Aegis สามารถทำให้มันยาวได้ตามอำเภอใจ); และ

(c) ไฟล์ whiteout และสิ่งอื่นใดที่ "วางอยู่" จะทำให้วิธีการใด ๆ สับสน
ซึ่งสอบปากคำระบบไฟล์

วิธีที่ง่ายที่สุดในการใช้ความรู้เกี่ยวกับไฟล์ของ Aegis คือการใช้ an awk(1) สคริปต์
กำลังประมวลผลรายการไฟล์ Aegis ตัวอย่างเช่น คุณสามารถทำเช่นนี้กับ ทำ(1) ดังนี้
# สร้างรายการไฟล์
manifest.make.inc: manifest.make.awk
( aegis -l cf -ter ; aegis -l pf -ter ) |
awk -f manifest.make.awk > manifest.make.inc
# ตอนนี้รวมไฟล์ manifest
รวม manifest.make.inc
หมายเหตุ: สิ่งนี้จะไม่มีประสิทธิภาพสำหรับคุณที่ทำครั้งเดียวต่อไดเร็กทอรี แต่ไม่มีอะไรเลย
หยุดคุณเขียนงานจำนวนมากลงใน manifest.make.inc ไฟล์ทั้งหมดในที่เดียว
ผ่านไป

เป็นไปได้ที่จะทำสิ่งเดียวกันกับตัวสร้างรายงานของ Aegis (ดู Aer(1) สำหรับเพิ่มเติม
ข้อมูล) แต่สิ่งนี้มีความเกี่ยวข้องมากกว่า awk(1) สคริปต์ อย่างไรก็ตามด้วย
ข้อมูล "ตรงจากปากม้า" อย่างที่เป็นอยู่ก็สามารถฉลาดขึ้นได้มากเช่นกัน

ไฟล์ Manifest นี้จะล้าสมัยหากไม่มีการเชื่อมต่อกับไฟล์ของ Aegis
คำสั่งการดำเนินงาน โดยใช้ โครงการ-file_command และ คำสั่ง change_file_ สาขาของ
โครงการ การตั้งค่า ไฟล์ (ดู เอปคอนเฟอเรนซ์(5) สำหรับข้อมูลเพิ่มเติม) คุณสามารถลบไฟล์นี้
ในช่วงเวลาแห่งกลยุทธ์
/* ทำงานเมื่อมีการเปลี่ยนแปลงรายการไฟล์การเปลี่ยนแปลง */
change_file_command = "rm -f manifest.make.inc";
/* รันเมื่อไฟล์โปรเจ็กต์มีการเปลี่ยนแปลง */
project_file_command = "rm -f manifest.make.inc";
รายการไฟล์ใหม่จะถูกสร้างขึ้นใหม่ในช่วงต่อไป แอ๊บ(1) คำสั่ง

Options และ การตั้งค่า
มี -ไม่มี-WhiteOut ซึ่งอาจใช้เพื่อระงับไฟล์ whiteout เมื่อคุณใช้
แอม(1) และ เอมวี(1) คำสั่ง มีความสอดคล้อง -ไวท์เอาท์ ตัวเลือกซึ่งก็คือ
มักจะเป็นค่าเริ่มต้น

มี whiteout_preference ในไฟล์การตั้งค่าผู้ใช้ (ดู อย(5) สำหรับ
ข้อมูลเพิ่มเติม) หากคุณต้องการตั้งค่าตัวเลือกนี้อย่างถาวรมากขึ้น

Whiteout เนื้อไม่มีมัน แม่แบบ
พื้นที่ whiteout_ template ด้านโครงการ การตั้งค่า ไฟล์อาจใช้สร้างภาษา-
ไฟล์ข้อผิดพลาดเฉพาะ หากไม่มีรายการเทมเพลต whiteout ที่ตรงกัน ไฟล์ 1KB ที่น่าเกลียดมากจะ
ถูกผลิตขึ้น - ควรทำให้เกิดข้อผิดพลาดของคอมไพเลอร์ในภาษาใดก็ได้

หากคุณต้องการข้อความแสดงข้อผิดพลาดที่มนุษย์สามารถอ่านได้เพิ่มเติม รายการเช่น
whiteout_ template =
[
{
รูปแบบ = [ "*.[ch]" ];
body = "#error ไฟล์นี้ถูกลบแล้ว";
}
];
มีประสิทธิภาพมาก (ตัวอย่างนี้ถือว่า gcc(1) กำลังใช้)

หากจำเป็นที่ ไม่ สร้างไฟล์ whiteout ได้ พูดสำหรับไฟล์ต้นฉบับ C คุณสามารถ
ใช้เทมเพลต whiteout เช่น
whiteout_ template =
[
{ รูปแบบ = [ "*.c" ]; }
];
เพราะขาด ร่างกาย ช่องย่อยหมายถึงไม่สร้างไฟล์ whiteout เลย

คุณอาจมีรายการเทมเพลต whiteout มากกว่าหนึ่งรายการ แต่โปรดทราบว่าลำดับของ
รายการมีความสำคัญ รายการแรกที่ตรงกันจะถูกใช้

การประกาศ
เมื่อเสร็จสิ้นคำสั่งนี้ การแจ้งเตือนมักจะดำเนินการโดย
แอม(1) แอฟ(1) และ เอนท์(1) รันคำสั่งตามความเหมาะสม ซึ่งรวมถึง
โครงการ_file_คำสั่ง, new_file_command, ใหม่_test_command และ คำสั่ง remove_file_ ทุ่ง
ของโครงการ การตั้งค่า ไฟล์. ดู เอปคอนเฟอเรนซ์(5) สำหรับข้อมูลเพิ่มเติม

OPTIONS


เข้าใจตัวเลือกต่อไปนี้:

- เปลี่ยน จำนวน
ตัวเลือกนี้อาจใช้เพื่อระบุการเปลี่ยนแปลงเฉพาะภายในโครงการ ดู
โล่(1) สำหรับคำอธิบายที่สมบูรณ์ของตัวเลือกนี้

-ช่วย
ตัวเลือกนี้อาจใช้เพื่อรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการใช้ โล่
โครงการ

-รายการ
ตัวเลือกนี้อาจใช้เพื่อรับรายการหัวข้อที่เหมาะสมสำหรับคำสั่งนี้
รายการอาจกว้างกว่าที่คาดไว้

-ไม่_เข้าสู่ระบบ
ตัวเลือกนี้อาจใช้เพื่อปิดใช้งานการบันทึกอัตโนมัติของเอาต์พุตและข้อผิดพลาดไปยัง
ไฟล์. สิ่งนี้มักจะมีประโยชน์เมื่อรวมคำสั่ง aegis หลายคำสั่งในเชลล์
ต้นฉบับ

-โครงการ ชื่อ
สามารถใช้ตัวเลือกนี้เพื่อเลือกโครงการที่สนใจได้ เมื่อไม่มี -โครงการ
มีการระบุตัวเลือก the AEGIS_โครงการ พิจารณาตัวแปรสภาพแวดล้อม ถ้า
ที่ไม่มีอยู่จริงของผู้ใช้ $HOME/.aegisrc ไฟล์ถูกตรวจสอบค่าเริ่มต้น
เขตข้อมูลโครงการ (ดู อย(5) สำหรับข้อมูลเพิ่มเติม) ถ้าสิ่งนั้นไม่มีอยู่
เมื่อผู้ใช้ทำงานเฉพาะกับการเปลี่ยนแปลงภายในโปรเจ็กต์เดียว โปรเจ็กต์
ชื่อเริ่มต้นสำหรับโครงการนั้น มิฉะนั้นจะเป็นข้อผิดพลาด

-สั้น
ตัวเลือกนี้อาจใช้เพื่อทำให้รายการผลิตขั้นต่ำเปล่าของ
ข้อมูล. โดยปกติแล้วจะมีประโยชน์สำหรับเชลล์สคริปต์

- ละเอียด
ตัวเลือกนี้อาจใช้เพื่อทำให้การอุปถัมภ์ให้ผลผลิตมากขึ้น โดยค่าเริ่มต้น aegis
สร้างเอาต์พุตเมื่อเกิดข้อผิดพลาดเท่านั้น เมื่อใช้ร่วมกับ -รายการ ตัวเลือกตัวเลือกนี้
ทำให้มีการเพิ่มส่วนหัวของคอลัมน์

-รอ ตัวเลือกนี้อาจใช้เพื่อให้คำสั่ง Aegis รอการล็อคการเข้าใช้ if
ไม่สามารถรับได้ในทันที ค่าเริ่มต้นของผู้ใช้ lock_wait_preference
ถ้าไม่ได้ระบุไว้ ดู อย(5) สำหรับข้อมูลเพิ่มเติม

-ไม่รอ
ตัวเลือกนี้อาจใช้เพื่อให้คำสั่ง Aegis ปล่อยข้อผิดพลาดร้ายแรงหาก access
ไม่สามารถรับล็อคได้ทันที ค่าเริ่มต้นของผู้ใช้
lock_wait_preference ถ้าไม่ได้ระบุไว้ ดู อย(5) สำหรับข้อมูลเพิ่มเติม

-ไวท์เอาท์
ตัวเลือกนี้อาจใช้เพื่อขอให้แทนที่ไฟล์ที่ถูกลบด้วย "ไวท์เอาต์"
ไฟล์ในไดเร็กทอรีการพัฒนา แนวคิดคือการรวบรวมไฟล์ดังกล่าวจะ
ส่งผลให้เกิดข้อผิดพลาดร้ายแรง เพื่อที่จะพบการอ้างอิงทั้งหมด นี่คือ
มักจะเป็นค่าเริ่มต้น

-No_WhiteOut
ตัวเลือกนี้อาจใช้เพื่อขอไม่ให้วางไฟล์ “ไวท์เอาต์” ลงในไฟล์
ไดเร็กทอรีการพัฒนา

ดูสิ่งนี้ด้วย โล่(1) สำหรับตัวเลือกทั่วไปของคำสั่ง aegis ทั้งหมด

ตัวเลือกทั้งหมดอาจเป็นตัวย่อ ตัวย่อถูกบันทึกไว้เป็นอักษรตัวพิมพ์ใหญ่
ตัวพิมพ์เล็กและขีดล่าง (_) ทั้งหมดเป็นตัวเลือก คุณต้องใช้ติดต่อกัน
ลำดับของตัวอักษรทางเลือก

ตัวเลือกทั้งหมดไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ คุณอาจพิมพ์เป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กหรือ a
การรวมกันของทั้งสองกรณีไม่สำคัญ

ตัวอย่างเช่น: อาร์กิวเมนต์ "-project, "-PROJ" และ "-p" ทั้งหมดถูกตีความว่าหมายถึง
-โครงการ ตัวเลือก. อาร์กิวเมนต์ "-prj" จะไม่เข้าใจเพราะติดต่อกัน
ไม่ได้ระบุอักขระเสริม

อ็อพชันและอาร์กิวเมนต์บรรทัดคำสั่งอื่นๆ อาจผสมกันได้ตามใจชอบบนบรรทัดคำสั่ง
หลังจากตัวเลือกฟังก์ชั่น

ชื่อตัวเลือกแบบยาวของ GNU เป็นที่เข้าใจ เนื่องจากชื่อตัวเลือกทั้งหมดสำหรับ โล่ ยาว
นี่หมายถึงการละเว้นนำหน้าพิเศษ '-' NS "--ตัวเลือก=ความคุ้มค่า" การประชุมยังเป็น
เข้าใจแล้ว

ที่แนะนำ ALIAS


นามแฝงที่แนะนำสำหรับคำสั่งนี้คือ
csh% นามแฝง aemv 'aegis -mv \!* -v'
sh$ aemv(){aegis -mv "$@" -v}

ข้อผิดพลาด


เป็นข้อผิดพลาดหากการเปลี่ยนแปลงไม่อยู่ใน กำลัง พัฒนา รัฐ
ถือเป็นข้อผิดพลาดหากไม่มีการกำหนดการเปลี่ยนแปลงให้กับผู้ใช้ปัจจุบัน
ถือเป็นข้อผิดพลาดหากไฟล์ใดไฟล์หนึ่งอยู่ในการเปลี่ยนแปลงแล้ว

EXIT สถานภาพ


พื้นที่ โล่ คำสั่งจะออกโดยมีสถานะเป็น 1 เมื่อเกิดข้อผิดพลาดใด ๆ NS โล่ คำสั่งจะเท่านั้น
ออกโดยมีสถานะเป็น 0 หากไม่มีข้อผิดพลาด

และพวกเรา ตัวแปร


ดู โล่(1) สำหรับรายการตัวแปรสภาพแวดล้อมที่อาจส่งผลต่อคำสั่งนี้ ดู
เอปคอนเฟอเรนซ์(5) สำหรับไฟล์คอนฟิกูเรชันของโปรเจ็กต์ โครงการ_เฉพาะ ช่องสำหรับวิธีตั้งค่า
ตัวแปรสภาพแวดล้อมสำหรับคำสั่งทั้งหมดที่ดำเนินการโดย Aegis

ใช้ aemv ออนไลน์โดยใช้บริการ onworks.net



โปรแกรมออนไลน์ Linux และ Windows ล่าสุด