lex начальные условия

этот источник может вам помочь

В этом исходном коде есть 4 основные задачи.

а. Получите список каталогов в вашей корзине S3.

б. Создайте структуру каталогов на машине вашего ведра S3.

с. Загрузите файлы и каталоги из корзины S3 в уже созданную структуру каталогов.

д. Предоставьте права доступа к загруженным файлам корзин S3.

создайте varlist.yml и добавьте переменную

1. Ведро _имя 2. aws _ключ доступа _3. aws _секретный _ключ

---
 - name: Bucket copy
   hosts: localhost
   become_method: sudo
   become_user: root
   become: true
   gather_facts: False
   vars_files:
     - varlist.yml
   tasks:
     - name: Get s3 objects     # Make list of directory and files in register
       aws_s3:
         bucket: "{{ Bucket_name }}"
         mode: list
         aws_access_key: "{{ aws_access_key }}"
         aws_secret_key: "{{ aws_secret_key }}"
       register: s3_object_list
     - name: Create download directory  # Create directory for download latest code on s3 bucket 
       file:
         path: "S3/{{ item }}"
         state: directory
       with_items:
         - "{{ s3_object_list.s3_keys }}"
       ignore_errors: true
     - name: Download s3 objects       # Download files in there appropriate directory on serverside  
       aws_s3:
         bucket: "{{ Bucket_name }}"
         object: "{{ item }}"
         mode: get
         dest: "S3/{{ item }}"
         aws_access_key: "{{ aws_access_key }}"
         aws_secret_key: "{{ aws_secret_key }}"
       with_items:
         - "{{ s3_object_list.s3_keys  }}"
       ignore_errors: true
     - name: Folder permissions
       file:
         path: S3/*                                         
         state: touch
         mode: "u=rw,g=r,o=r"
0
28.10.2020, 22:05
1 ответ

В программе lex у вас могут быть условия запуска , которые определяются директивой %s, подобной этой:

%s PROGRAM COMMENT WHATEVER

, а затем переключаться между ними с помощью макроса BEGIN. Для быстрой проверки flex нумерует те, которые последовательно начинаются с 1 (, потому что предопределенное состояниеINITIALравно0).

Запустив flex, вы увидите в lex.yy.cнесколько строк, подобных этой:

#define INITIAL 0
#define PROGRAM 1
#define COMMENT 2
#define WHATEVER 3

Явный программист вашего примера решил жестко -закодировать1вместо того, чтобы использовать символ.

0
18.03.2021, 22:54

Теги

Похожие вопросы