Куда будут перемещаться файлы с неправильными именами (переименовывать без указания пути)?

0

Я случайно совершил большую ошибку:

В моей программе C++ я сделал:

std::string oldFilePath = "/Users/blah/somepath/foo.xml";
std::string newFileName = "foo.xml" //Blunder! Forgot to prefix the new path!
int status = rename(oldFilePath.c_str(), newFileName.c_str());

Я забыл префикс нового пути и просто поместил имя файла (без пути) для нового имени, в которое должен быть переименован файл. В результате файл исчез со старого пути, и я не знаю, куда его ушло!

Где находится файл? Есть ли способ восстановить его? (Time Machine отключена для этой папки, поэтому я не могу этого сделать!)

EDIT: Где будет скомпилированный файл, созданный Xcode для приложения C++?

EDIT: Если вы запускаете программу через xcode, она должна быть в:

~/Library/Developer/Xcode/DerivedData//Build/Products/Debug/

Не забывайте ~ в указанном выше пути!

  • 0
    Было небрежно отключать Time Machine в папке, где вы заботитесь о его содержимом.
  • 0
    Существует более миллиона файлов, которые продолжают генерироваться и изменяться. Если бы я включил его, моей машине времени было бы очень мало места.
Теги:
macos

1 ответ

0
Лучший ответ

Если операция выполнена успешно (status == 0), файл будет находиться в текущем каталоге процесса при его запуске. Трудно предсказать, где это может быть, но $HOME - один правдоподобный кандидат (возможно, /Users/blah/foo.xml). Вы должны найти его либо с помощью команды find либо с помощью Spotlight.

Я не использую интерфейс XCode (или другие IDE), отчасти потому, что мне не нравится отсутствие контроля над такими вещами, как "где программа ставится" и "какой текущий каталог при запуске программы" ( и для остальных, потому что я динозавр). AFAIK, исполняемый файл должен находиться в каталоге под папкой, в которой вы создали проект. Опять же, Spotlight или find должны быть в состоянии помочь вам, по крайней мере, если вы выбрали своеобразное имя для программы. Каталог проекта - это еще одно место для поиска файла foo.xml.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню