Копирует файлы и каталоги, включая подкаталоги.
Я использую NetBeans для программирования на C ++, я хочу получить текущий абсолютный путь к исполняемому файлу
поэтому я использую
1, system(“pwd”)
затем нажмите кнопку запуска, но все они получают неправильный путь: ~ / NetBeansWorkSpace / project_1
Вот такой сюрприз, я запускаю баш
Я понимаю правильный путь.
Похожие темы
- 04.12.2011,
- 10.06.2010,
- 09.06.2010,
Ваши права в разделе
Чтобы копировать все файлы и подкаталоги (включая пустые подкаталоги) с диска A на диск B,
введите:
xcopy a: b: /s /e
Чтобы включить в операцию копирования предыдущего примера системные и скрытые файлы следует
использовать параметр /h:
xcopy a: b: /s /e /h
Чтобы обновить файлы в каталоге Reports файлами из каталога alldata, измененными после 29
декабря 2013 года, введите:
xcopy alldata
eports /d:29-12-2013
Чтобы обновить файлы предыдущего примера, уже существующие в каталоге Reports, независимо от
их даты, введите следующую команду:
xcopy alldata
eports /u
Чтобы получить список файлов, которые были бы скопированы в предыдущем примере, следует ввести
команду:
Список файлов, которые были бы скопированы, находится в файле Xcopy.out.
Чтобы скопировать каталог Customer и все подкаталоги \PublicAddress на сетевой диск H,
сохранить у файлов атрибут «только для чтения», введите команду:
xcopy customer h:publicaddress /s /e /k /p
Чтобы выдать предыдущую команду, убедиться, что команда xcopy создает каталог Address
и устранить вывод сообщение о создании нового каталога, добавьте параметр /i следующим
образом:
xcopy customer h:publicaddress /s /e /k /p /i
Для запуска программы xcopy и анализа кодов завершения можно создать пакетный файл и
использовать оператор
if для обработки кодов завершения в случае возникновения ошибок.
Например, следующая пакетная программа использует замещаемые параметры для задания
источникаxcopy и результата:
Эта пакетная программа может быть использована для копирования всех файлов каталога
C:Prgmcode и его подкаталогов на диск B следующим образом:
copyit c:prgmcode b:
Где copyit – имя командного файла, текст которого приведен выше.
Командный интерпретатор подставляет C:Prgmcode вместо параметра %1 и B вместо
параметра %2, затем использует команду xcopy с параметрами /e и
/s.
Если при выполнении xcopy произошла ошибка, пакетная программа считывает
код завершения и переходит на метку, указанную в соответствующей инструкции
IF ERRORLEVEL. В результате на экран выводится сообщение о
характере ошибки и осуществляется выход из пакетной программы.
Следует отметить, что XCOPY предназначена для работы с файлами и каталогами,
но не с устройствами (например, c принтером).
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать
раздел форума
этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен
здесь
Параметры
Обязательный параметр. Задает местонахождение и имена файлов для копирования. Параметр
должен задавать или диск, или путь.
Задает место, куда будут скопированы файлы. Параметр может включать имя диска с двоеточием,
имя каталога, имя файла или их комбинацию.
Выводит следующее сообщение с ожиданием подтверждения начала копирования:
Нажмите любую клавишу, чтобы начать копирование файлов
Запрашивает подтверждение при создании каждого файла-результата.
Проверяет каждый скопированный файл на соответствие его оригиналу.
Отменяет вывод на экран сообщений команды xcopy.
Выводит имена исходных файлов и файлов-результатов в процессе копирования.
Отображает список копируемых файлов.
Создает незашифрованные файлы-результаты.
Копирует только файлы, измененные не ранее заданной даты. Если не включить значение
мм-дд-гггг, команда xcopy копирует все файлы-источники, которые новее
существующих файлов-результатов. Эта возможность позволяет обновлять только
измененные файлы.
Копирует (обновляет) только те файлы-источники, которые уже существуют в каталоге
результата.
Если источником является каталог или источник содержит подстановочные знаки и
результат не существует, команда xcopy считает, что результат это
имя каталога, и создает новый каталог. Затем xcopy копирует все указанные файлы в
новый каталог. По умолчанию команда xcopy запрашивает подтверждение, является ли
параметр результат каталогом или файлом.
Копирует каталоги и подкаталоги, если они не пусты. Если параметр /s не задан,
команда xcopy будет работать только с одним каталогом.
Копирует все подкаталоги, включая пустые. Параметр /e используется с параметрами
/s и /t.
Копирует только структуру подкаталога (т. е. дерево), а не файлы. Для копирования пустых
каталогов следует задать ключ /e.
Копирует файлы с атрибутом «только для чтения» с сохранением этого атрибута для
скопированных файлов, оригиналы которых имеют этот атрибут. По умолчанию команда
xcopy удаляет атрибут «только для чтения».
Копирует файлы с атрибутом «только для чтения».
Копирует системные и скрытые файлы. По умолчанию команда xcopy не копирует системные
и скрытые файлы.
Копирует только те файлы, которые имеют установленный атрибут «архивный». При использовании
параметра /a атрибут “архивный” у исходных файлов не меняется. Сведения об установке
атрибутов с помощью команды
attrib.
Копирует только те файлы, которые имеют установленный атрибут «архивный». В отличие от
параметра /a, параметр /m очищает атрибут «архивный» у скопированных файлов.
Сведения об установке атрибутов с помощью команды
attrib.
Копирует с использованием коротких имен файловой системы NTFS. Параметр /n требуется
при копировании из файловой системы NTFS в файловую систему FAT или когда на
диске-результате требуется использование соглашения об именах файлов как в файловой системе
FAT (8.3). Файлы могут записываться в файловую систему FAT или NTFS.
Копирует сведения о принадлежности файлов и избирательной таблице управления доступом
(DACL).
Копирует сведения о параметрах аудита файла и системной таблице управления доступом (SACL)
(подразумевается наличие /p).
Определяет список файлов, содержащих строки.
Устраняет выдачу запроса на подтверждение перезаписи существующего конечного файла.
Выдает запрос на подтверждение перезаписи существующего конечного файла.
Копирует по сети в режиме перезапуска.
Отображает справку в командной строке.
Другие решения
Нет ничего плохого — NetBeans запускает вашу программу с текущим рабочим каталогом, установленным в каталог проекта (~/NetBeansWorkSpace/project_1).
Ваша программа не должна зависеть от текущего каталога, совпадающего с каталогом, в котором находится ваша программа. Увидеть эта тема если вы хотите увидеть несколько разных способов получения абсолютного пути к вашей программе.
NetBeans запускает ваше приложение с ~/NetBeansWorkSpace/project_1/ путем префикса пути dist/Debug/GNU-Linux-x86/ приводя к этому.
Откройте оболочку, сделайте компакт-диск ~/NetBeansWorkSpace/project_1/тогда делай dist/Debug/GNU-Linux-x86/executableFileName и вы получите тот же результат, как если бы вы запустили приложение из NetBeans.
Для Linux:
Функция для выполнения системной команды
Тогда мы получим название приложения
Затем мы извлекаем путь приложения
Не забудьте обрезать линию после
Решение
Как и все остальные, NetBeans устанавливает рабочий каталог перед запуском приложения. Если вы хотите получить рабочий каталог исполняемого файла, я считаю, что должно работать следующее.



