

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 步驟 8：更新技術指南以建立及複製檔案
<a name="gettingstarted-cookbooks-create-file"></a>

**重要**  
 AWS OpsWorks Stacks 此服務已於 2024 年 5 月 26 日終止，並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問，請透過 [AWS re：Post](https://repost.aws/) 或透過 [AWS Premium Support](https://aws.amazon.com/support) 聯絡 AWS 支援 團隊。

透過新增會將兩個檔案新增至執行個體的配方，來更新您的技術指南。配方中的第一個資源會完全使用配方程式碼來建立檔案。這與執行 Linux **cat**、**echo** 或 **touch** 命令，或 Windows **echo** 或 **fsutil** 命令相似。此技術對少量、小型或簡單的檔案相當有用。配方中的第二個資源會將技術指南中的檔案複製到執行個體上的另一個目錄。這與執行 Linux **cp** 命令或 Windows **copy** 命令相似。此技術對於大量、大型或複雜的檔案相當有用。

在您開始此步驟前，請先完成[步驟 7：更新技術指南以建立目錄](gettingstarted-cookbooks-create-directory.md)以確保檔案的父系目錄已存在。

**更新執行個體上的技術指南及執行新的配方**

1. 在您的本機工作站上，於 `opsworks_cookbook_demo` 目錄中，建立名為 `files` 的子目錄。

1. 在 `files` 子目錄中，建立名為 `hello.txt` 的檔案，其中包含下列文字：**Hello, World\$1**

1. 在 `opsworks_cookbook_demo` 目錄的 `recipes` 子目錄中，建立名為 `create_files.rb` 的檔案，其中包含下列程式碼。如需詳細資訊，請前往 [file](https://docs.chef.io/resource_file.html) 和 [cookbook\$1file](https://docs.chef.io/resource_cookbook_file.html)。

   ```
   file "Create a file" do
     content "<html>This is a placeholder for the home page.</html>"
     group "root"
     mode "0755"
     owner "ec2-user"
     path "/tmp/create-directory-demo/index.html"
   end
   
   cookbook_file "Copy a file" do  
     group "root"
     mode "0755"
     owner "ec2-user"
     path "/tmp/create-directory-demo/hello.txt"
     source "hello.txt"  
   end
   ```

   `file` 資源會在指定的路徑中建立檔案。`cookbook_file` 資源會從您在技術指南中建立的 `files` 目錄 (Chef 預期會找到名為 `files` 的標準命名目錄，並從中複製檔案)，將檔案複製到執行個體上的另一個目錄。

1. 在終端機或命令提示中，使用 **tar** 命令建立 `opsworks_cookbook_demo.tar.gz` 檔案的新版本，其中包含 `opsworks_cookbook_demo` 目錄及其更新後的內容。

1. 將更新後的 `opsworks_cookbook_demo.tar.gz` 檔案上傳至 S3 儲存貯體。

1. 遵循[步驟 5：更新執行個體上的技術指南及執行配方](gettingstarted-cookbooks-copy-cookbook.md)中的程序，更新執行個體上的技術指南及執行配方。在「執行配方」程序中，針對 **Recipes to execute (要執行的配方)**，輸入 **opsworks\$1cookbook\$1demo::create\$1files**。

**測試配方**

1. 登入執行個體 (若您尚未登入的話)。

1. 從命令提示中，逐項執行下列命令以確認新的檔案已新增：

   ```
   sudo cat /tmp/create-directory-demo/index.html
   
   sudo cat /tmp/create-directory-demo/hello.txt
   ```

   即會顯示檔案的內容：

   ```
   <html>This is a placeholder for the home page.</html>
   
   Hello, World!
   ```

在[下一個步驟](gettingstarted-cookbooks-run-command.md)中，您會更新技術指南，在執行個體上執行命令。